Advertencia del compilador (nivel 1) CS3007
Actualización: noviembre 2007
Mensaje de error
El método sobrecargado 'método' que sólo se diferencia por tipos de matriz sin nombre no es compatible con CLS
Overloaded method 'method' differing only by unnamed array types is not CLS-compliant
Este error aparece si tiene un método sobrecargado que toma una matriz escalonada (jagged array) y la única diferencia entre las firmas de método es el tipo de elemento de la matriz. Para evitar este error, piense en utilizar una matriz rectangular en lugar de una matriz escalonada; utilice un parámetro adicional para eliminar la ambigüedad de la llamada a la función; cambie el nombre de uno o varios métodos sobrecargados; o bien, si no es necesaria la compatibilidad con CLS, quite el atributo CLSCompliantAttribute. Para obtener más información sobre la compatibilidad con CLS, vea Escribir código conforme con CLS y Common Language Specification.
Ejemplo
En el siguiente ejemplo se genera el error 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) {}
}