2017-01-21 4 views
0

В настоящее время у меня есть следующие ме-Динамически читать свойства из C# EXPANDO объекта

public void CreateWorkbook<T>(List<T> ItemList) 
{ 
    PropertyInfo[] properties= typeof(T).GetProperties(); 
    foreach (PropertyInfo prop in properties) 
    { 
    } 
} 

Я хотел бы заменить T с объектом EXPANDO. Но я не могу читать свойства объекта expando.

есть ли способ сделать это?

ответ

3

Вы можете получить свойства, используя что-то вроде:

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])); 
       } 
      } 
     } 
+0

его работы. Благодарю. –