使用属性设置 bool 属性
本文关键字:属性 bool 设置 | 更新日期: 2023-09-27 18:32:05
有没有办法使用属性设置属性值?在视图模型中,我有一个优点:
public bool HasAccess{get;set;}
并想做这样的事情:
[MyAttribute]
public bool HasAccess{get;set;}
MyAttribute 应该设置 HasAccess 的值。 我的问题是如何构建 MyAttribute,我将 HasAccess 的值设置为属性中赋予它的任何值。
属性与类型相关联。 您可以通过Type.GetProperty()和PropertyInfo.GetCustomAttributes()找到这个。 这不能帮助您设置对象的属性值。 除非HasAccess是静态的,否则它不会看起来。 换句话说,您将无法为 PropertyInfo.SetValue() 的第一个参数提供值。
如果你已经有对象引用,那么这不是问题,使用它的 GetType() 方法并将对象传递给 SetValue。 但那是其他地方的代码,而不是属性类中的代码。