CS0433 de erro do compilador
Mensagem de erro
O tipo TypeName1 existe tanto TypeName2 TypeName3
Dois diferentes assemblies referenciados em seu aplicativo contêm os mesmos espaço para nome e tipo, que produz ambigüidade.
Para resolver esse erro, use o recurso de alias do /Reference (importação de metadados) (Opções do compilador translation from VPE for Csharp) compilador de opção ou não referência a um dos seus assemblies.
Exemplo
Esse código cria a DLL com a primeira cópia do tipo ambíguo.
// CS0433_1.cs
// compile with: /target:library
namespace TypeBindConflicts
{
public class AggPubImpAggPubImp {}
}
Esse código cria a DLL com a segunda cópia do tipo ambíguo.
// CS0433_2.cs
// compile with: /target:library
namespace TypeBindConflicts
{
public class AggPubImpAggPubImp {}
}
O exemplo a seguir gera 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
}
}
O exemplo a seguir mostra como você pode usar o recurso de alias do /reference opção do compilador para resolver esse erro 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();
}
}