共用方式為


編譯器錯誤 CS1928

更新:2007 年 11 月

錯誤訊息

'Type' 不包含 'method' 的定義,而且最佳的擴充方法多載 'method' 有一些無效的引數。

針對您所呼叫的方法,編譯器 (Compiler) 找不到具有該方法之名稱的類別 (Class) 成員時,便會產生這個錯誤。它可以利用該名稱尋找擴充方法,但不是利用與透過方法呼叫所傳入之型別相符的簽章 (Signature)。

若要更正這個錯誤

  • 傳入與現有擴充方法或類別方法相符的型別。

範例

下列程式碼會產生 CS1928:

// cs1928.cs
class Test
{
    static void Main()
    {
        Test t = new Test();
        t.M("hi"); // CS1928
    }
}
static class Ext
{
    public static void M(this Test t, int i)
    {
    }
}

這個錯誤通常會伴隨著「CS1503:引數 'n': 無法從 'typeA' 轉換為 'typeB'」。

請參閱

參考

擴充方法 (C# 程式設計手冊)