8

Setup:Ninject montaggio non corrisponde riferimento assemblaggio

  • ASP.NET MVC3
  • Ninject v2.2.1.4
  • Ninject v3.0.0.15
  • Ninject.MVC3 v3. 0.0.6
  • Ninject.Web.Common v3.0.0.7

Utilizzando N UGET, il mio progetto unittest riferimento Ninject v2.2.1.4

I miei riferimenti progetto web v3.0.0.15 Ninject, Ninject.MVC3 e Ninject.Web.Common

Problema:

Con la vittoria explorer si apre nella cartella bin del mio progetto web, costruisco la mia soluzione e posso vedere Ninject v2.2.1.4 copiato nella directory bin del mio progetto web. E poi essere sostituito da Ninject v3.0.0.15.

quando ho colpito il tasto F5 per eseguire il debug, Ninject.dll v3.0.0.15 viene sostituito con Ninject v2.2.1.4 che causa il seguente errore:

Impossibile caricare il file o l'assembly 'Ninject, Version = 3.0 .0.0, Culture = neutral, PublicKeyToken = c7192dc5380945e7 'o una delle sue dipendenze. La definizione manifest di assembly individuato non corrisponde al riferimento all'assembly. (Eccezione da HRESULT: 0x80131040)

Cosa dà?

+0

Così ho semplicemente eliminato Ninject v2.2.1.4 dal mio elenco di pacchetti. Durante l'esecuzione/debug della soluzione rimane la v3.0.0.15. Il mio problema è risolto ma vorrei aver capito o saputo perché è stato sovrascritto in primo luogo. Ho esaminato attentamente tutti i riferimenti e v2.2.1.4 non è stato referenziato da nessuna parte. Ho persino fatto un riferimento manuale alla DLL v3 ma inutilmente, v2 veniva sempre copiato ovwer durante il debug. Se avessi fatto una build v3 sarebbe stata copiata ... scusa se questo non aiuta nessuno, ma se qualcuno conosce la risposta mi piacerebbe sapere. TIA ... –

risposta

0

Alcuni pensieri:

  1. Solo nella tua build di debug fatto di avere un riferimento indiretto alla versione v2 Ninject. Caso in questione, sto indovinando quando stai facendo la tua build di debug costruisci il tuo progetto Test mentre una versione build non crea il tuo progetto Test.
  2. Durante la costruzione, hai notato quale progetto è stato creato quando la DLL v2 è stata collocata nel cestino? Allora sarai in grado di capire quale progetto fa riferimento alla build di v2 e di essere in grado di restringere la tua ricerca (ad esempio la risposta diventerebbe un po 'più ovvia se fosse non il progetto Test).
  3. Non è mai consigliabile fare riferimento a più versioni in diversi progetti.
  4. Hai controllato a cosa puntavano i tuoi riferimenti a Web.config e App.config?
Problemi correlati