获取类的变量列表
本文关键字:列表 变量 获取 | 更新日期: 2023-09-27 18:00:44
Class foo
{
public string name;
public int age;
public datetime BirthDate;
}
我上了以上的课。
我想要foo类的变量列表。
我试过
foo fooObj= new foo();
fooObj.GetType().GetProperties()
这给我返回了0个属性。
显然,这不会起作用,因为类foo中没有属性。
您的类具有字段,而不是属性。属性具有getter和setter方法,而字段仅存储数据。
尝试
typeof(foo).GetFields()
或将字段更改为属性:
Class foo
{
public string name {get; set;}
public int age {get; set;}
public datetime BirthDate {get; set;}
}
或者,要获取字段和属性,请使用:
typeof(foo).GetMembers()
.Where(mi => mi.MemberType == MemberTypes.Field ||
mi.MemberType == MemberTypes.Property);
你试过这个吗:
new foo().GetType().GetFields()
它们是fields
而不是properties
,GetType
是object
的一种方法。
只执行foo.GetType()
将引发错误。