【发布时间】:2016-01-22 05:40:56
【问题描述】:
我有一个字典,其中包含我想要在我拥有的类的实例中匹配和更新的值对。
例如我有;
name -> test
userid -> 1
在我的班级里,我有
MyClass.Name
MyClass.UserId
我想设置MyClass.Name = test等
目前我有以下方法;
public static GridFilters ParseGridFilters(Dictionary<string,string> data, MyClass myClass)
{
foreach (KeyValuePair<string, string> kvp in data)
{
Type t = typeof(MyClass);
t.GetProperty(kvp.Value, BindingFlags.IgnoreCase | BindingFlags.Public | BindingFlags.Instance);
}
return myClass;
}
然后我如何检查 kvp.Key 是否存在(不管我认为我已经用 BindingFlags 覆盖的情况),然后将 kvp.Value 设置为 myClass.(kvp.Key)
【问题讨论】:
-
kvp.Key is in是什么意思?什么时候进去?什么时候出? -
TL;博士。您是否正在寻找“带有反射的 C# 设置属性” - stackoverflow.com/questions/619767/…
-
我可以假设您想将字典中的值分配给对象的属性,将属性名称与字典键匹配。但是您的字典仅包含字符串值。
MyClass长什么样?它有哪些类型的属性? -
@AlexeiLevenkov 是的完美没有找到这个:)
标签: c# reflection