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 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
}
}
Umpan balik .NET
.NET adalah proyek sumber terbuka. Pilih tautan untuk memberikan umpan balik: