Upozornění kompilátoru (úroveň 2) CS0278
"type" neimplementuje vzor "název vzoru". Název metody je nejednoznačný s názvem metody.
V jazyce C# existuje několik příkazů, které spoléhají na definované vzory, například foreach
a using
. Příkaz například foreach
spoléhá na třídu kolekce, která implementuje vzor "enumerable".
CS0278 může nastat, pokud kompilátor nemůže provést shodu kvůli nejednoznačnostem. Například vzor "enumerable" vyžaduje, aby byla volána MoveNext
metoda a váš kód může obsahovat dvě metody volané MoveNext
. Kompilátor se pokusí najít rozhraní, které se má použít, ale doporučuje se určit a vyřešit příčinu nejednoznačnosti.
Následující ukázka vygeneruje 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
}
}
Zpětná vazba k produktu .NET
.NET je open source projekt. Vyberte odkaz pro poskytnutí zpětné vazby: