When deserialising an object in dotnet, the default (Microsoft's) solution is to create the object with its default constructor and then set property after property. This requires a default constructor.
Add a way to get all data contract classes. For example through naming convention "xxxDataContract" their namespace "MyProject.DataContracts" or having a [DataContract] attribute. (is Microsoft's data contract attribute called DataContract?)
Which project? Meta?