2012-12-22 15 views
7

Questo è un progetto CLR. Sto importando due file DLL con lo stesso nome, quizz.dll (rinominerò la versione precedente come legacyquizz.dll) e includo la versione più recente come quizz.dll in un progetto di test del convertitore legacy. (Il progetto del convertitore legacy in fase di test importa solo il vecchio quizz.dll)."Assembly Same Simple Name già importato" errore

Questo è l'errore che sto ottenendo. . .

Un complesso con lo stesso nome semplice 'Quizz, Version = 2.0.0.1, Culture = neutral, PublicKeyToken = null è già stato importato.

Provare a rimuovere uno dei riferimenti oa firmarlo su abilitare l'affiancamento. c: \. . . \ Quizz.dll

Il percorso a cui punta è la destinazione della versione più recente di quizz.dll.

che sto utilizzando un alias esterna sul file legacyquizz.dll:

extern alias legacy; 

Che cosa è un "semplice nome" in questo contesto?

+0

Provare a rinominare il nome dell'assembly dalle proprietà del progetto di uno dei progetti di controllo. – daryal

+0

Non posso farlo è disattivato. – rbtLong

risposta

4

È possibile visualizzare il nome semplice aprendo le proprietà del progetto e selezionando Informazioni Assembly:

enter image description here

per firmare l'assembly è necessario selezionare scheda Firma e creare o selezionare chiave di firma:

enter image description here

3

Si hanno due assiemi con lo stesso nome (non nome file, nome assembly). Esistono due soluzioni:

  1. Rinominare uno degli assiemi dalle proprietà del progetto e ricompilare.
  2. Configurare Strong-Name Signing sull'assieme per consentire la coesistenza di due versioni separate dello stesso assieme.
-2

Anche io sembra questo problema nel mio progetto. Avevo cambiato il mio percorso di DLL in un'altra cartella e modificato anche il percorso di riferimento per lo stesso (livelli di dipendenza). Funzionerà. Non si verifica alcuna duplicazione