Sdílet prostřednictvím


Compilerfehler CS1704

Aktualisiert: November 2007

Fehlermeldung

Es wurde bereits eine Assembly mit Namen "Assemblyname" importiert. Entfernen Sie einen der Verweise, oder signieren Sie die Verweise, damit sie parallel verwendet werden können.
An assembly with the same simple name 'Assembly Name' has already been imported. Try removing one of the references or sign them to enable side-by-side.

Dieser Fehler zeigt auf, dass zwei Referenzen über dieselbe Assemblyidentität verfügen, da die entsprechenden Assemblys keine starken Namen haben, nicht signiert wurden und der Compiler deshalb in den Metadaten nicht zwischen ihnen unterscheiden kann. Deshalb werden die Version und die Eigenschaften des Kulturassemblynamens zur Laufzeit ignoriert. Benutzer müssen die redundante Schnittstelle entfernen, eine der Referenzen umbenennen oder einen starken Namen für sie vergeben.

Beispiel

In diesem Beispiel wird eine Assembly erstellt und im Stammverzeichnis gespeichert.

// CS1704_a.cs
// compile with: /target:library /out:c:\\cs1704.dll
public class A {}

In diesem Beispiel wird eine Assembly mit demselben Namen wie im vorherigen Beispiel erstellt, die aber an einem anderen Speicherort gespeichert wird.

// CS1704_b.cs
// compile with: /target:library /out:cs1704.dll
public class A {}

In diesem Beispiel wird versucht, auf beide Assemblys zu verweisen. Im folgenden Beispiel wird CS1704 generiert.

// CS1704_c.cs
// compile with: /target:library /r:A2=cs1704.dll /r:A1=c:\\cs1704.dll
// CS1704 expected
extern alias A1;
extern alias A2;