Chyba kompilátoru CS0434
Obor názvů NamespaceName1 v NamespaceName2 je v konfliktu s typem TypeName1 v NamespaceName3
K této chybě dochází, když importovaný typ a importovaný vnořený obor názvů mají stejný plně kvalifikovaný název. Když se na tento název odkazuje, kompilátor nemůže rozlišovat mezi těmito dvěma názvy. Pokud můžete importovaný zdrojový kód změnit, můžete chybu vyřešit změnou názvu typu nebo oboru názvů tak, aby oba byly v rámci sestavení jedinečné.
Následující kód vygeneruje chybu CS0434.
Tento kód vytvoří první kopii typu s totožným plně kvalifikovaným názvem.
// CS0434_1.cs
// compile with: /t:library
namespace TypeBindConflicts
{
namespace NsImpAggPubImp
{
public class X { }
}
}
Tento kód vytvoří druhou kopii typu s totožným plně kvalifikovaným názvem.
// CS0434_2.cs
// compile with: /t:library
namespace TypeBindConflicts {
// Conflicts with another import (import2.cs).
public class NsImpAggPubImp { }
// Try this instead:
// public class UniqueClassName { }
}
Tento kód odkazuje na typ s identickým plně kvalifikovaným názvem.
// CS0434.cs
// compile with: /r:cs0434_1.dll /r:cs0434_2.dll
using TypeBindConflicts;
public class Test
{
public TypeBindConflicts.NsImpAggPubImp.X n2 = null; // CS0434
}
Zpětná vazba k produktu .NET
.NET je open source projekt. Vyberte odkaz pro poskytnutí zpětné vazby: