日期:2014-05-19  浏览次数:20731 次

如何查找一个对象中的特定属性,并给它赋值?
假设有一个对象CLASS,它有3个属性A、B、C
现在我们要给B属性赋值100,如果将此赋值语句写死在代码中如CLASS.B   =   100非常简单,但能否实现动态查找CLASS中的属性,找到B后给它赋值?

由于类中有大量属性,而对其中哪个属性进行操作赋值较为随机,因此没有办法将赋值语句一条条写死在代码中,求一动态查找类属性并赋值的方法

代码或文字叙述所采用方法均可,非常感谢,解决立即结贴

------解决方案--------------------
使用反射机制,先找到指定名称的属性,再给它赋值。
具体代码有空的时候再给你写一段。
------解决方案--------------------
有好多种方法,都是用反射技术,最简单的方法是
Type type = Type(你的class)

foreach (PropertyInfo info in type.GetProperties())
{
if(info.Name = "B ")
{
info.SetValue(obj, 100, null);//obj为你的class实例,如果是静态属性为null
}
}
------解决方案--------------------
一个字:反射!