所以LINQPad表示它支持C#5.0中的所有內容,但我無法使CallerMemberName正常工作。如何在LINQPad中使用CallerMemberName?
void Main()
{
GetMethodName().Dump();
}
public string GetMethodName([CallerMemberName] string memberName = "")
{
return memberName;
}
錯誤:類型或命名空間名稱CallerMemberName'找不到(按F4添加using指令或組件參考)
類型或命名空間名稱「CallerMemberNameAttribute」找不到(您是否缺少using指令或程序集引用?)
我試着爲CallerMemberName所在的名稱空間添加一條using
行,但當然這不起作用,因爲LINQPad會假設您輸入的代碼位於某個祕密隱藏課程,你不能把using
裏面的一個clas秒。然後我嘗試輸入CallerMemberName的完整名稱空間:public string GetMethodName([System.Runtime.CompilerServices.CallerMemberName] string memberName = "")
但這仍然不起作用。
錯誤:類型或命名空間名稱CallerMemberName'不存在命名空間「System.Runtime.CompilerServices」
類型或命名空間名稱「CallerMemberNameAttribute」存在的命名空間「System.Runtime不存在。編譯器服務'
當然我知道。我一直在Visual Studio中使用CallerMemberName。我只是試圖在LINQPad中做到這一點,以便讓工作中的某個人瞭解它是如何工作的一個快速示例,除非我無法實現它。 – Nick