編譯器錯誤 CS1673
更新:2007 年 11 月
錯誤訊息
結構內部的匿名方法、Lambda 運算式及查詢運算式無法存取 'this' 的執行個體成員。請考慮將 'this' 複製到匿名方法、Lambda 運算式或查詢運算式外部的區域變數。
下列範例會產生 CS1673:
// CS1673.cs
delegate int MyDelegate();
public struct S
{
int member;
public int F(int i)
{
member = i;
// Try assigning to a local variable
// S s = this;
MyDelegate d = delegate()
{
i = this.member; // CS1673
// And use the local variable instead of "this"
// i = s.member;
return i;
};
return d();
}
}
class CMain
{
public static void Main()
{
}
}