Peringatan Pengompilasi (level 2) CS0279

'type' tidak mengimplementasikan pola 'pattern name'. 'method name' bersifat statik atau tidak publik.

Ada beberapa pernyataan dalam C# yang mengandalkan pola yang ditentukan, seperti foreach dan using. Misalnya, foreach bergantung pada kelas koleksi yang mengimplementasikan pola yang dapat dienumerasi. Kesalahan ini terjadi jika pengompilasi tidak dapat membuat kecocokan karena metode yang dideklarasikan static atau bukan public. Metode dalam pola diperlukan untuk menjadi instans kelas, dan untuk menjadi publik.

Contoh

Contoh berikut menghasilkan CS0279:

// CS0279.cs  
  
using System;  
using System.Collections;  
  
public class myTest : IEnumerable  
{  
    IEnumerator IEnumerable.GetEnumerator()  
    {  
        yield return 0;  
    }  
  
    internal IEnumerator GetEnumerator()  
    {  
        yield return 0;  
    }  
  
    public static void Main()  
    {  
        foreach (int i in new myTest()) {}  // CS0279  
    }  
}