Compilerfehler CS0438
Der Typ 'typ' in 'modul_1' verursacht einen Konflikt mit dem Namespace 'namespace' in 'modul_2'.
Dieser Fehler tritt auf, wenn ein Typ in einer Quelldatei im Konflikt mit einem Namespace in einer anderen Quelldatei steht. Dies tritt meistens dann auf, wenn einer oder beide aus einem hinzugefügten Modul stammen. Um das Problem zu beheben, benennen Sie den Typ oder den Namespace um, der den Konflikt verursacht hat.
Im folgenden Beispiel wird CS0438 generiert:
Kompilieren Sie zunächst diese Datei:
// CS0438_1.cs
// compile with: /target:module
public class Util
{
public class A { }
}
Kompilieren Sie dann diese Datei:
// CS0438_2.cs
// compile with: /target:module
namespace Util
{
public class A { }
}
Und kompilieren Sie dann diese Datei:
// CS0438_3.cs
// compile with: /addmodule:CS0438_1.netmodule /addmodule:CS0438_2.netmodule
using System;
public class Test
{
public static void Main() {
Console.WriteLine(typeof(Util.A)); // CS0438
}
}
Zusammenarbeit auf GitHub
Die Quelle für diesen Inhalt finden Sie auf GitHub, wo Sie auch Issues und Pull Requests erstellen und überprüfen können. Weitere Informationen finden Sie in unserem Leitfaden für Mitwirkende.