0
我面臨驗證其驗證屬性與相應字段名稱關聯的屬性的問題。C#從屬性中檢索字段名
int _myIntField;
public int MyIntField {
get { return _myIntField; }
set { _myIntField = value; }
}
現在,在驗證Binding
對象的時候,我有機會獲得BindingField
,它返回屬性名MyIntField
,而不是字段名_myIntField
。
是否有可能以某種方式檢索_myIntField
的財產?如果是這樣,怎麼樣?
那麼如果你的命名規則是堅實的,你可能只是做了更換的第一個字母...'字符串名稱=「_」 + Char.ToLowerInvariant(輸入[0])+ input.Substring (1);' – musefan
你可能可以去Roslyn了。至於這樣做的工廠方式,請考慮以下內容:'int Foo {get {return _bar * _baz> 0? _pete:_barney; }}。 「Foo」的領域是什麼?你可以選擇編寫代碼來對這個問題作出一個假設或另一個假設,但是.NET框架無法做出任何對每個人都有意義或有用的假設。 –
[如何從PropertyInfo獲取Getter後臺字段?](http://stackoverflow.com/questions/38490739/how-to-get-getter-backing-field-from-propertyinfo) – thehennyy