反思的ExpandoObject
-
25-09-2019 - |
题
我已经写了极好的功能,将接受system.object
,反映其属性和序列化对象转换成JSON字符串。它看起来像这样:
public class JSONSerializer
{
public string Serialize(object obj)
现在,我希望能够做到这一点序列化动态/ ExpandoObject,而是因为我的序列化使用反射,它是不是能够做到这一点。有什么解决办法?
public class Test
{
public dynamic MakeDynamicCat()
{
dynamic newCat = new ExpandoObject();
newCat.Name = "Polly";
newCat.Pedigree = new ExpandoObject();
newCat.Pedigree.Breed = "Whatever";
return newCat;
}
public void SerializeCat()
{
new JSONSerializer().Serialize(MakeDynamicCat());
}
}
解决方案
我想,这个问题是非常相似:如何反映了动态对象的成员?
至少答案应该帮助你。
其他提示
我建议使用JSON.NET序列化。版本3.5支持序列化动态对象(如Expando的)。从JSON反序列化到动态对象包括一个小的努力,但同样不是太麻烦了。下面交列出了出来:
不隶属于 StackOverflow