FluentNHibernate und NuGet: Could not load file or assembly "NHibernate, Version=3.0.0.2001

Written on April 04, 2011

Holt man sich FluentNHibernate via NuGet, erhält man unter Umständen folgende Fehlermeldung bei der Verwendung von NHibernate:

Could not load file or assembly 'NHibernate, Version=3.0.0.2001, Culture=neutral, PublicKeyToken=aa95f207798dfdb4' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)

In den Properties für die NHibernate-Assembly, die im Projekt verwendet wird, steht die Version 3.1.0.4000.

Um das Problem zu lösen, muss ein Assembly-Redirect in der app.config bzw. web.config eingerichtet werden.

Dies kann man per NuGet durch folgenden Befehl erledigen:

Add-BindingRedirect -ProjectName

Update: Laut David Fowler ist es nach dem Update auf NuGet 1.2 nicht mehr notwendig, Add-BindingRedirect manuell aufzurufen, da sich NuGet selbst darum kümmert.

DotNetKicks-DE Image