igo*_*udi 3 c# reflection custom-attributes backing-field
我有一个简单的POCO类,例如
class C {
[MyAtrib]
public int i {get; set;}
[MyAtrib]
public int i2;
}
Run Code Online (Sandbox Code Playgroud)
我打电话的时候:
GetType().GetFields(
BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance);
Run Code Online (Sandbox Code Playgroud)
在那个类(实例)上我无法得到FieldInfo
那些自动生成getter/setter(即int i
上面)的成员.
实际上,我正在尝试读取那些自定义属性(MyAtrib
),而不能为那些具有的属性执行此操作{get; set;}
.
这是为什么?我希望得到这两个i
和它的(私人)支持领域,因为i
是公开的.
我能到i
的MyAtrib
某种方式通过反射?
你现在就得到了田地,但它public int i {get; set;}
是一个财产.你需要得到属性:
// note: properties -> generally public
GetType().GetProperties(BindingFlags.Instance | BindingFlags.Public);
Run Code Online (Sandbox Code Playgroud)