积极答复者
当为对象赋值时,如何快速列出所有属性?

问题
-
例如:
A a = new A();
a.UserId = "1";
a.UserName = "mark";
a.Age = 18;
a.Height = 170;
a.Weight = 70;
a.....=.....;
每次赋值时都要重复找出a的属性,有办法快速列出a的属性吗?列出像下面的代码:
a.UserId =
a.UserName =
a.Age =
a.Height =
a.Weight =
a.....=
这样我就可以对应着属性赋值了.请各位赐教,谢谢!
- 已移动 Sheng Jiang 蒋晟Moderator 2010年4月26日 1:53 C#编辑器问题 (发件人:.NET Framework 一般性问题讨论区)
答案
-
用反射
Type t = A.GetType();
foreach(Property p in t.GetProperties())
{
if(p.Name == "UserId") ....
}
大致这个意思吧,凭记忆写的
霸王- 已标记为答案 KeFang Chen 2010年4月26日 9:08
-
你好 就是如Jimt所述 通过反射来实现
PropertyInfo.SetValue 方法来对属性赋值
http://msdn.microsoft.com/zh-cn/library/xb5dd1f1(zh-tw).aspx
I see you~http://hi.baidu.com/1987raymondMy Blog~~~- 已标记为答案 KeFang Chen 2010年4月26日 9:08
全部回复
-
用反射
Type t = A.GetType();
foreach(Property p in t.GetProperties())
{
if(p.Name == "UserId") ....
}
大致这个意思吧,凭记忆写的
霸王- 已标记为答案 KeFang Chen 2010年4月26日 9:08
-
你好 就是如Jimt所述 通过反射来实现
PropertyInfo.SetValue 方法来对属性赋值
http://msdn.microsoft.com/zh-cn/library/xb5dd1f1(zh-tw).aspx
I see you~http://hi.baidu.com/1987raymondMy Blog~~~- 已标记为答案 KeFang Chen 2010年4月26日 9:08