2011-01-23 9 views
17

Ho appena aggiornato il mio progetto per utilizzare NuGet per riferimenti esterni. Ho aggiunto il riferimento a NHibernate, che ha aggiunto tutte le altre dipendenze per NH. Di quanto ho aggiunto FluentNHibernate. Le versioni di NH scaricate per NH e Fluent non corrispondono. NuGet mostra la versione di FNH come 1.1.1.694 come dipendente dalla versione 3.0.0.0.2001 di NH, mentre NH sta mostrando come versione 3.0.0.4000.FluentNHibernate e NuGet, problema con la versione NH

Quando eseguo l'applicazione, ottengo questo messaggio:

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

Ho anche provato a scaricare dal sito FNH, ma che mostra che la versione è in FNH è 1.1.0.685 che dipende 2.1.2.4000.

È possibile correggere NuGet o utilizzare solo BindingRedirect in config?

+0

Personalmente ho rinunciato a NuGet, i repository sono dappertutto e non aggiornati. – Phill

+0

@Phil: Davvero? Ho appena fatto un passaggio pensando che sarebbe stato più facile gestire le mie dipendenze – epitka

+3

La maggior parte dei pacchetti sono aggiornati. Alcuni non hanno ancora proprietari ufficiali, ma questo sta cambiando rapidamente con l'aumentare dell'adozione. –

risposta

18

Sei fortunato! NuGet ha un comando proprio per questo scenario (che intendiamo rendere più automatico in futuro http://blog.davidebbo.com/2011/01/nuget-versioning-part-3-unification-via.html). In primo luogo costruire il vostro progetto e dal tipo di console gestore di pacchetti:

PM> Add-BindingRedirect 

E sarà aggiungere il set minimo di reindirizzamenti legame di configurazione per far funzionare tutto.

+1

Il comando è in realtà _Add-BindingRedirects_ nelle versioni pre-v1.1 ... manca "s". – cdeszaq

+0

@cdeszaq: Dovrà provarlo. Per ora ho solo aggiunto manualmente il reindirizzamento nel file di configurazione. Buono a sapersi sull'opzione. – epitka

+0

FYI, il comando era plurale in 1.0, ma cambiato in singolare in 1.1 (per me più PowerShell 'corretto'). –

Problemi correlati