Compilerfehler CS0434

Aktualisiert: November 2007

Fehlermeldung

Der Namespace "Namespacename1" in "Namespacename2" verursacht einen Konflikt mit dem Typ "Typname1" in "Namespacename3".
The namespace NamespaceName1 in NamespaceName2 conflicts with the type TypeName1 in NamespaceName3

Dieser Fehler tritt auf, wenn der importierte Typ und der importierte Namespace denselben voll qualifizierten Namen aufweisen. Wenn auf diesen Namen verwiesen wird, kann der Compiler nicht zwischen beiden unterscheiden.

Der Fehler CS0434 wird durch folgenden Code generiert.

Beispiel

Durch diesen Code wird die erste Kopie des Typs mit dem identischen voll qualifizierten Namen erstellt.

// CS0434_1.cs
// compile with: /t:library
namespace TypeBindConflicts 
{
    namespace NsImpAggPubImp 
    {
        public class X { }
    }
}

Durch diesen Code wird die zweite Kopie des Typs mit dem identischen voll qualifizierten Namen erstellt.

// CS0434_2.cs
// compile with: /t:library
namespace TypeBindConflicts {
    // Conflicts with another import (import2.cs).
    public class NsImpAggPubImp { }
    // Try this instead:
    // public class UniqueClassName { }
}

Dieser Code verweist auf den Typ mit dem identischen voll qualifizierten Namen.

// CS0434.cs
// compile with: /r:cs0434_1.dll /r:cs0434_2.dll
using TypeBindConflicts;
public class Test 
{
    public TypeBindConflicts.NsImpAggPubImp.X n2 = null; // CS0434
}