2012-08-26 119 views
0

我一直在閱讀這個的其他例子,我似乎可以通過傳遞它的名字來賦值我的字段的值。通過傳遞它的名字來指定一個字段值

private string fieldName; //contains the name of the field I want to edit 

void IObserver.Update(object data) 
{  
    FieldInfo field = this.GetType().GetField(fieldName); 

    if(field != null) 
    { 
     field.SetValue(this, data);   
    } 
} 

場最終總是空,我無法弄清楚,爲什麼

+1

請向我們展示這堂課。 – SLaks

回答

2

Get*方法在.net反射只會默認搜索公共成員。
要獲得私人領域,請通過BindingFlags.NonPublic | BindingFlags.Instance

相關問題