2013-04-07 25 views

回答

2

好的 - 物業不能被設置。它是隻讀的,可能是故意的。

如果這個班級的設計者沒有給你設置這個值的機會,你不應該試圖設置它。在很多情況下,這樣做是不可能的,因爲價值甚至可能不被某個領域支持(認爲DateTime.Now),或者可能是某種不可逆的方式計算的(按照Marcin的回答)。

在如果你真的迂迴你可以得到IL的保持實施tring.get,制定出它是從ting財產獲取,然後通過反射調用二傳手這種特殊情況下 - 但在這一點上你正在走下一條非常黑暗的道路,你幾乎肯定會後悔。

1

你不能那樣做,除非你知道什麼是後臺字段名稱。當你這樣做時,你可以設置字段值,它會反映到屬性值。

考慮這種情況時,有可能和你的財產不會被一個字段(像)備份:

public string tring 
{ 
    get 
    { 
     return string.format("foo {0} foo", ting); 
    } 
} 

應該怎麼期望set婷的輸出特性?

相關問題