Errore del compilatore CS1703

Aggiornamento: novembre 2007

Messaggio di errore

Un assembly con la stesso nome semplice 'nome' è già stato importato. Rimuovere uno dei riferimenti o firmarli per consentirne l'affiancamento.
An assembly with the same simple name 'name' has already been imported. Try removing one of the references or sign them to enable side-by-side.

Il compilatore rimuove i riferimenti con percorso e nome di file uguali. È possibile, tuttavia, che lo stesso file sia memorizzato in due directory o che non sia stato cambiato il numero di versione. Questo errore indica che due riferimenti hanno la stessa identità di assembly e il compilatore non è quindi in grado di distinguerli nei metadati. Rimuovere uno dei riferimenti ridondanti oppure definirli in modo univoco, ad esempio incrementando il numero di versione dell'assembly.

Il seguente codice di esempio genera l'errore CS1703.

Esempio

Il codice riportato di seguito genera l'assembly A nella directory .\bin1.

Salvare questo esempio in un file denominato CS1703a1.cs e compilarlo utilizzando i seguenti flag: /t:library /out:.\bin1\cs1703.dll /keyfile:key.snk

using System;
public class A { }

Il codice riportato di seguito genera una copia dell'assembly A nella directory .\bin2.

Salvare questo esempio in un file denominato CS1703a2.cs e compilarlo utilizzando i seguenti flag: /t:library /out:.\bin2\cs1703.dll /keyfile:key.snk

using System;
public class A { }

Il codice riportato di seguito fa riferimento all'assembly A generato nei due moduli precedenti.

Salvare questo esempio in un file denominato CS1703ref.cs e compilarlo utilizzando i seguenti flag: /t:library /r:A2=.\bin2\cs1703.dll /r:A1=.\bin1\cs1703.dll

extern alias A1;
extern alias A2;