更新:2007 年 11 月

错误消息

只是未命名数组类型不同的重载方法“method”不符合 CLS。

如果您有一个接受交错数组的重载方法,并且方法签名的唯一区别是数组的元素类型,则将发生此错误。为避免此错误,可考虑使用矩形数组而不是交错数组,使用一个额外的参数消除函数调用的歧义,重命名一个或多个重载方法,或者如果不需要 CLS 遵从性,则移除 CLSCompliantAttribute 属性。有关 CLS 遵从性的更多信息,请参见编写符合 CLS 的代码公共语言规范

示例

下面的示例生成 CS3007:

 复制代码
// CS3007.cs
[assembly: System.CLSCompliant(true)]
public struct S
{
    public void F(int[][] array) { }
    public void F(byte[][] array) { }  // CS3007
    // Try this instead:
    // public void F1(int[][] array) {}
    // public void F2(byte[][] array) {}
    // or 
    // public void F(int[,] array) {}
    // public void F(byte[,] array) {}
}