我想知道.Net中是否有内置功能可以输出(在运行时)给定对象中的所有属性和值,如果可能,甚至包括子对象。
我正在考虑反思或XML Serializion并看到some people mentioned JSON,但无法真正弄清楚如何以正确的方式做到这一点......有谁知道这是否可能是内置的.Net中的功能,或者是否有一个很好的示例/工具已经可以做到这一点,或者可以指导我朝正确的方向发展?
答案 0 :(得分:3)
使用Reflection。
查看对象的所有公共属性和值:
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
}
答案 1 :(得分:1)
您可以使用XmlSerializer课程或查看JSON.Net框架。