Peringatan Pengompilasi (tingkat 2) CS0278

'type' tidak mengimplementasikan pola 'pattern name'. 'method name' ambigu dengan 'method name'.

Ada beberapa pernyataan dalam C# yang mengandalkan pola yang ditentukan, seperti foreach dan using. Misalnya, foreach pernyataan bergantung pada kelas koleksi yang mengimplementasikan pola "enumerable".

CS0278 dapat terjadi jika pengompilasi tidak dapat membuat kecocokan akibat adanya ambiguitas. Misalnya, pola "enumerable" mengharuskan adanya metode yang disebut MoveNext, dan kode Anda mungkin berisi dua metode yang disebut MoveNext. Pengompilasi akan mencoba menemukan antarmuka yang akan digunakan, tetapi disarankan agar Anda menentukan dan menyelesaikan penyebab ambiguitas tersebut.

Contoh

Sampel berikut menghasilkan 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  
   }  
}