更新:2007 年 11 月
错误消息
“type”不实现“pattern name”模式。“method name”与“method name”混淆。在 C# 中有若干语句依赖定义的模式,如 foreach 和 using。例如,foreach 依赖于实现“enumerable”模式的集合类。
当编译器由于多义性无法进行匹配时,会发生 CS0278。例如,“enumerable”模式要求有一个名为 MoveNext 的方法,而您的代码可能包含两个名为 MoveNext 的方法。编译器将尝试找到一个接口来使用,但建议您找出导致二义性的原因并加以解决。
有关更多信息,请参见
示例
下面的示例生成 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 } } |