如何获得有他们名字的串类成员的值? [英] How to get class members values having string of their names?
本文介绍了如何获得有他们名字的串类成员的值?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
可能重复:结果
的我怎么能读一个C#类的属性动态?
块引用>
我得只使用其名称的字符串类成员的值。我想我必须使用反射,但我真的不知道如何。你能帮助我吗?
解决方案的MemberInfo成员= typeof运算(MyClass的).GetMember(成员名字);
如果你知道你要找的成员类型,可以使用
.GetMethod
,.GetField
,.GetProperty
等
如果你不知道你正在使用的类型:
VAR为MyObject = someobject;
串membername =somemember;
的MemberInfo成员= myobject.GetType()GetMember(membername)。
不同的会员类型有不同的方法来获取值。对于一个属性,你会怎么做:
VAR为MyObject = someobject;
串PROPERTYNAME =somemember;
的PropertyInfo财产= myobject.GetType()的getProperty(membername)。
对象值= property.GetValue(为MyObject,NULL);
Possible Duplicate:
How can I read the properties of a C# class dynamically?I have to get values of class members using strings of their names only. I think I have to use Reflection but I am not realy sure how to. Can you help me?
解决方案MemberInfo member = typeof(MyClass).GetMember("membername");
If you know type of member you're looking for, you can use
.GetMethod
,.GetField
,.GetProperty
, etc.If you don't know the type you are working with:
var myobject = someobject; string membername = "somemember"; MemberInfo member = myobject.GetType().GetMember(membername);
Different member types have different means to getting the value. For a property you would do:
var myobject = someobject; string propertyname = "somemember"; PropertyInfo property = myobject.GetType().GetProperty(membername); object value = property.GetValue(myobject, null);
这篇关于如何获得有他们名字的串类成员的值?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文