2013-02-03 29 views
1

所有,CallerMemberNameAttribute和.Net 4

我在.NET 4.5注意到有一個CallerMemberName屬性,它混合使用特別提高從調用方法的PropertyChanged事件。我的問題是,因爲這個屬性並不是專門存在於.NET 4.0中的,是否有可能通過創建一個自定義屬性以某種方式複製這種行爲?代碼示例非常感謝。

回答

2

您正在查找的行爲是C#5.0的一項功能,編譯器

只要你使用支持它的編譯器,你可以創建自己的System.ComponentModel.CallerMemberNameAttribute,它會正常工作。

+0

雖然這只是一個警告(對於OP):稍後升級框架時可能會出現問題,特別是如果這是可能在4.5項目中使用的庫代碼 –

+0

@MarcGravell:使其「內部」應該解決(雖然我還沒有嘗試過) – SLaks

+0

實際上,這是針對.NET 4.0項目中使用的代碼,在部署時會包含XP計算機。 – William