共用方式為


編譯器警告 (層級 2) CS0278

更新:2007 年 11 月

錯誤訊息

'type' 未實作 'pattern name' 模式。'method name' 對 'method name' 模稜兩可。

C# 中有數種陳述式需依賴定義的模式,例如 foreach 和 using。例如,foreach 倚賴實作「可列舉」模式的集合類別。

如果編譯器因模稜兩可而無法進行比對時,便會發生 CS0278。例如,「可列舉」模式需要一個稱為 MoveNext 的方法,而您的程式碼可能包含兩個稱為 MoveNext 的方法。編譯器會嘗試尋找要使用的介面,但建議您判斷模稜兩可的原因並解決該問題。

如需詳細資訊,請參閱 HOW TO:使用 foreach 存取集合類別 (C# 程式設計手冊)

範例

下列範例會產生 CS0278。

// CS0278.cs
using System.Collections.Generic;
public class myTest 
{
   public static void TestForeach<W>(W w) 
      where W: IEnumerable<int>, IEnumerable<string>
   {
      foreach (int i in w) {}   // CS0278
   }
}