Compilerfehler CS0433Compiler Error CS0433

Der Typ „Typname1“ ist sowohl in „Typname2“ als auch in „Typname3“ vorhanden.The type TypeName1 exists in both TypeName2 and TypeName3

Zwei Assemblys, auf die in der Anwendung verwiesen wird, enthalten den gleichen Namespace und den gleichen Typ, was zu Mehrdeutigkeit führt.Two different assemblies referenced in your application contain the same namespace and type, which produces ambiguity.

Verwenden Sie zum Lösen dieses Problems das Aliasfeature der Compileroption /reference (C# Compiler Options) (/reference (C#-Compileroptionen)), oder verweisen Sie auf keine der Assemblys.To resolve this error, use the alias feature of the /reference (C# Compiler Options) compiler option or do not reference one of your assemblies.

BeispielExample

Durch diesen Code wird die DLL mit der ersten Kopie des mehrdeutigen Typs erstellt.This code creates the DLL with the first copy of the ambiguous type.

// CS0433_1.cs  
// compile with: /target:library  
namespace TypeBindConflicts   
{  
   public class AggPubImpAggPubImp {}  
}  

BeispielExample

Durch diesen Code wird die DLL mit der zweiten Kopie des mehrdeutigen Typs erstellt.This code creates the DLL with the second copy of the ambiguous type.

// CS0433_2.cs  
// compile with: /target:library  
namespace TypeBindConflicts   
{  
   public class AggPubImpAggPubImp {}  
}  

BeispielExample

Im folgenden Beispiel wird der Fehler CS0433 generiert.The following example generates CS0433.

// CS0433_3.cs  
// compile with: /reference:cs0433_1.dll /reference:cs0433_2.dll  
using TypeBindConflicts;  
public class Test   
{  
   public static void Main()   
   {  
      AggPubImpAggPubImp n6 = new AggPubImpAggPubImp();   // CS0433  
   }  
}  

BeispielExample

Im folgenden Beispiel wird die Verwendung des Aliasfeatures der Compileroption /reference zum Beheben des Fehlers CS0433 veranschaulicht.The following example shows how you can use the alias feature of the /reference compiler option to resolve this CS0433 error.

// CS0433_4.cs  
// compile with: /reference:cs0433_1.dll /reference:TypeBindConflicts=cs0433_2.dll  
using TypeBindConflicts;  
public class Test   
{  
   public static void Main()   
   {  
      AggPubImpAggPubImp n6 = new AggPubImpAggPubImp();  
   }  
}