Compilerwaarschuwing (niveau 2) CS0278
'type' implementeert het patroon 'patroonnaam' niet. 'methodenaam' is dubbelzinnig met 'methodenaam'.
Er zijn verschillende instructies in C# die afhankelijk zijn van gedefinieerde patronen, zoals foreach
en using
. De foreach
instructie is bijvoorbeeld afhankelijk van de verzamelingsklasse die het 'enumerable'-patroon implementeert.
CS0278 kan optreden als de compiler de overeenkomst niet kan maken vanwege dubbelzinnigheid. Het patroon 'enumerable' vereist bijvoorbeeld dat er een methode is aangeroepen MoveNext
en uw code kan twee methoden bevatten met de naam MoveNext
. De compiler probeert een interface te vinden die moet worden gebruikt, maar het wordt aanbevolen om de oorzaak van de dubbelzinnigheid te bepalen en op te lossen.
In het volgende voorbeeld wordt CS0278 gegenereerd.
// 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
}
}
.NET-feedback
.NET is een open source project. Selecteer een koppeling om feedback te geven: