【问题标题】:Dynamically read properties from c# expando object [duplicate]从c#expando对象动态读取属性[重复]
【发布时间】:2017-06-06 10:31:10
【问题描述】:
目前我有以下方法-
public void CreateWorkbook<T>(List<T> ItemList)
{
PropertyInfo[] properties= typeof(T).GetProperties();
foreach (PropertyInfo prop in properties)
{
}
}
我想用 expando 对象替换 T。但我无法从 expando 对象中读取属性。
有什么办法吗?
【问题讨论】:
标签:
c#
dynamic
expandoobject
【解决方案1】:
您可以通过以下方式获取属性:
public static void CreateWorkbook(List<ExpandoObject> ItemList)
{
foreach(var item in ItemList)
{
IDictionary<string, object> propertyValues = item;
foreach (var property in propertyValues.Keys)
{
Console.WriteLine(String.Format("{0} : {1}", property, propertyValues[property]));
}
}
}