我一直在研究一些關於C#中的反射,並想知道如果我使用的字典與鍵 - 值可以創建一個與變量名稱的對象字典中每個鍵的值和它們的值,即該字典的鍵值。用C#反射字典生成動態對象
我有一個相反的方法,即從字典中提取一個對象,該字典包含鍵和類屬性及其值,屬性的值。
我不知道如何做到這一點,如果可能的話。
下面是我的方法,其中提取對象的詞典:
protected Dictionary<String, String> getObjectProperty(object objeto)
{
Dictionary<String, String> dictionary = new Dictionary<String, String>();
Type type = objeto.GetType();
FieldInfo[] field = type.GetFields();
PropertyInfo[] myPropertyInfo = type.GetProperties();
String value = null;
foreach (var propertyInfo in myPropertyInfo)
{
if (propertyInfo.GetIndexParameters().Length == 0)
{
value = (string)propertyInfo.GetValue(objeto, null);
value = value == null ? null : value;
dictionary.Add(propertyInfo.Name.ToString(), value);
}
}
return dictionary;
}
你的意思是 '動態' 類型的對象?或者創建新的類型? – Euphoric
您使用的是什麼版本的.NET框架? –
對象已經存在,當退出這個函數時,我只需要將它的結果強制轉換(myObject)到現有的對象。 .NET 4.0 –