Get property value by string
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
C# How can I get the value of a string property via Reflection?
Get property value from string using reflection in C#
号
当我有一个字符串时,我想将它与我的所有属性名进行比较。有匹配项时,如何返回此属性的值?
class=设置
设置有2个属性。
当我有一个字符串与属性名相同时。如何返回该属性的值?
谢谢。
您可以使用反射来读取属性名和值。例如,要获取类型的公共属性列表,可以使用get properties方法:
1 2 3 4 5 6 | var properties = typeof(Setting); foreach (var prop in properties) { // here you can access the name of the property using prop.Name // if you want to access the value you could use the prop.GetValue method } |
您可以使用反射来获取类的属性,您可以通过类似的方法来实现这一点。
1 2 3 4 5 6 7 8 9 10 11 12 | PropertyInfo[] propertyInfos; propertyInfos = typeof(MyClass).GetProperties(BindingFlags.Public | BindingFlags.Static); foreach (PropertyInfo propertyInfo in propertyInfos) { if (propertyInfo.Name == yourString) { return yourString; } } |
号