Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Aggiornamento: novembre 2007
Messaggio di errore
Il tipo NomeTipo1 esiste sia in NomeTipo2 che in NomeTipo3.
The type TypeName1 exists in both TypeName2 and TypeName3
Due assembly diversi a cui viene fatto riferimento nell'applicazione contengono lo stesso tipo e spazio dei nomi. Ciò crea ambiguità.
Per correggere l'errore, utilizzare la funzionalità alias dell'opzione del compilatore /reference (importazione di metadati) (opzioni del compilatore C#) oppure non fare riferimento a uno degli assembly.
Esempio
Il codice riportato di seguito genera la DLL con la prima copia del tipo ambiguo.
// CS0433_1.cs
// compile with: /target:library
namespace TypeBindConflicts
{
public class AggPubImpAggPubImp {}
}
Il codice riportato di seguito genera la DLL con la seconda copia del tipo ambiguo.
// CS0433_2.cs
// compile with: /target:library
namespace TypeBindConflicts
{
public class AggPubImpAggPubImp {}
}
Il seguente esempio genera l'errore 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
}
}
Nell'esempio seguente viene illustrato l'utilizzo della funzionalità alias dell'opzione del compilatore /reference per risolvere l'errore CS0433.
// 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();
}
}