C#的PropertyInfo类用于反射一个类的属性信息,包括属性名称、数据类型、访问修饰符等,使用PropertyInfo类,可以在运行时动态地获取和设置类的属性值。

C#中的PropertyInfo类

C#的PropertyInfo类用于反射一个类的属性信息,包括属性名称、数据类型、访问修饰符等。

以下是PropertyInfo类的主要成员:

Name:获取或设置属性名称。

DeclaringType:获取定义该属性的类的类型。

PropertyType:获取属性的数据类型。

IsStatic:获取一个值,指示该属性是否为静态属性。

CanRead:获取一个值,指示该属性是否可读。

CanWrite:获取一个值,指示该属性是否可写。

GetValue(Object):返回指定对象上此属性的值。

SetValue(Object, Object):设置指定对象上此属性的值。

使用PropertyInfo类,可以在运行时动态地获取和设置类的属性值。例如,可以通过以下方式获取属性值:

PropertyInfo propertyInfo = typeof(Person).GetProperty("Name");
string name = (string)propertyInfo.GetValue(person);
登录后复制

上述代码使用typeof运算符获取Person类的Type对象,并通过GetProperty方法获取Name属性的PropertyInfo对象。然后使用GetValue方法获取person对象的Name属性值,并将其强制转换为string类型。

另外,还可以使用SetValue方法设置属性值,例如:

PropertyInfo propertyInfo = typeof(Person).GetProperty("Age");
propertyInfo.SetValue(person, 18);
登录后复制

上述代码使用GetProperty方法获取Age属性的PropertyInfo对象,并使用SetValue方法将person对象的Age属性值设置为18。

以上就是C#中的PropertyInfo类的详细内容,转载自php中文网

点赞(539) 打赏

评论列表 共有 0 条评论

暂无评论

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部