怎样获得一个对像的所有属性。

danfree 2003-07-23 06:07:46
1、有什么方法能得一个对象的所有属性。
2、如果有一个变量存储了某个对象的属性的名称,如何通过代码得到对象的这个属性以及如何给该属性赋值(也就是说不用obj.<属性名>,而是要用一个能传参数的方法来得到该属性)。
...全文
21 8 打赏 收藏 举报
写回复
8 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
zhixuan 2003-07-24
  • 打赏
  • 举报
回复
Type type = typeof(Class1);//或Type type = class1.GetType();类名
//class1是类实例
PropertyInfo[] myPropertyInfo1 = type.GetProperties();
//然后你可以从PropertyInfo对象中找到相应的属性的属性,例如属性名,属性类型等等
cygandti 2003-07-23
  • 打赏
  • 举报
回复
up
budweiser 2003-07-23
  • 打赏
  • 举报
回复
用反射
using System.Reflection;//调用反射
namespace Ex03
{

class Class1
{

[STAThread]
static void Main(string[] args)
{
Type t=typeof(Double);
MethodInfo[] m1=t.GetMethods();
foreach(MethodInfo i in m1)
{
Console.WriteLine(i);
}

}
}
public class Double
{
public int a;
public double b;
public string s;
public void AA()
{

}
}

}
一人一世界 2003-07-23
  • 打赏
  • 举报
回复
up
雪狼1234567 2003-07-23
  • 打赏
  • 举报
回复
up
panyee 2003-07-23
  • 打赏
  • 举报
回复
用using System.Reflection;

.net的quickstart自带了一个类浏览器, 用asp.net实现, 你可以参考一下
Coder李海波 2003-07-23
  • 打赏
  • 举报
回复
private string GetClassType(object obj,string propertyName)
{
Type t = obj.GetType();
PropertyInfo p = t.GetProperty(propertyName);
return p.GetValue(obj,null).ToString();
}
Coder李海波 2003-07-23
  • 打赏
  • 举报
回复
反射
发帖
C#

10.8w+

社区成员

.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
帖子事件
创建了帖子
2003-07-23 06:07
社区公告

让您成为最强悍的C#开发者