說,例如,我有這個簡單的類:獲得的PropertyInfo
public class MyClass
{
public String MyProperty { get; set; }
}
得到的方式,對的PropertyInfo myProperty的是:
typeof(MyClass).GetProperty("MyProperty");
這太差勁了!
爲什麼?容易:只要我更改屬性的名稱就會中斷,它需要大量的專用測試來查找使用屬性的每個位置,重構和使用樹無法找到這些類型的訪問。
難道沒有辦法正確訪問一個屬性嗎?什麼,這是在編譯時驗證?
我喜歡這樣的命令:
propertyof(MyClass.MyProperty);
它變得更糟。如果你看WPF,你會注意到它需要字符串屬性名稱來進行數據綁定,並且在實現INotifyPropertyChanged時也是如此。對於Reflection的用戶來說,這不是一個角落案例,而是一般的日常用例。我目前依靠Resharper來幫助保持同步。 – 2010-06-08 13:31:32
Unitesting在這裏幫了我很多,但多數民衆贊成在... – Enriquev 2010-06-08 13:45:39
相關堆棧溢出問題與更詳細的答案:http://stackoverflow.com/questions/491429/how-to-get-the-propertyinfo-of-a-特定屬性 – 2013-01-19 14:15:19