ServiceStack/ServiceStack.Text — pull request #196 by i-e-b (2012-09-20 13:05:28+00:00)
Title: Handling structs without Parse or ctor(string); Handling public properties with named backing fields and protected setters.

Apologies for the big code dump.

I've been using this fork to support work on extending EasyNetQ, so it's gained some odd new abilities:

* Structs which have *neither* a constructor which takes a string *nor* a `public static T Parse(string...)` method are now serialised and deserialised the same way as anon objects (json objects like `{"propname":value ...}` )

* Properties like `public T name {get{return backing;} protected set{backing = value;}}` can be serialised and deserialised.

* Properties like `public T name {get{return backing;}}` can be serialised and deserialised.

This has mono.reflection source included (not an extern dependency)

Thanks,
--ieb.