Markieren Sie das Kontrollkästchen Englisch, um die englische Version dieses Artikels anzuzeigen. Sie können den englischen Text auch in einem Popup-Fenster einblenden, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

Compiler Warning (level 1) CS3007

 

Die überladene "Methode"-Methode, die sich nur durch unbenannte Arraytypen unterscheidet, ist nicht CLS-kompatibel.

Dieser Fehler tritt auf, wenn eine überladene Methode mit einem verzweigten Array vorhanden ist und die Methodensignaturen sich lediglich durch den Elementtyp des Arrays unterscheiden.Um diesen Fehler zu vermeiden, verwenden Sie statt eines verzweigten Arrays ein rechteckiges Array. Verwenden Sie einen zusätzlichen Parameter, um den Funktionsaufruf eindeutig festzulegen. Benennen Sie mindestens eine der überladenen Methoden um. Wenn keine CLS-Kompatiblität erforderlich ist, können Sie auch das CLSCompliantAttribute-Attribut entfernen.Weitere Informationen über die CLS-Kompatibilität finden Sie unter Sprachenunabhängigkeit und sprachunabhängige Komponenten.

Im folgenden Beispiel wird der Fehler CS3007 generiert:

// 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) {}
}
Anzeigen: