0

我想知道.Net 中是否有一个内置功能可以(在运行时)输出给定对象中的所有属性和值,如果可能的话,甚至包括子对象。

我正在考虑 Reflection 或XML Serializion并看到一些人提到 JSON,但无法真正弄清楚如何以正确的方式做到这一点......有谁知道这是否可能是.Net中的内置功能或者是否有一个很好的例子/工具,要么已经这样做了,要么可以引导我朝着正确的方向前进?

4

2 回答 2

3

使用反射

要查看对象的所有公共属性和值:

foreach(var prop in obj.GetType().GetProperties()) //note: you can pass in binding flags to GetProperties to get static, private, etc properties
{
    var propVal = prop.GetValue(obj);

    //prop has information such as Name, PropertyType
    //propVal is the value of that property for obj
}
于 2012-11-29T22:18:39.770 回答
1

您可以使用XmlSerializer类或查看JSON.Net框架。

于 2012-11-29T22:22:24.057 回答