NHibernate,NHibernate,Linq和FluentNHibernate?投掷误差

NHibernate,NHibernate,Linq和FluentNHibernate?投掷误差,linq,nhibernate,fluent-nhibernate,Linq,Nhibernate,Fluent Nhibernate,我在上一个问题中有以下错误: 但是,现在,当我调用函数时: LoginRepository login = new LoginRepository(); var allLogins = login.GetAllLogins().ToList(); 它抛出一个错误: Could not load file or assembly 'NHibernate, Version=2.1.2.4000, Culture=neutral, PublicKeyToken=aa95f207798dfdb4'

我在上一个问题中有以下错误:

但是,现在,当我调用函数时:

LoginRepository login = new LoginRepository();
var allLogins = login.GetAllLogins().ToList();
它抛出一个错误:

Could not load file or assembly 'NHibernate, Version=2.1.2.4000, 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)
问题的根源是NHibernate.Linq。FusionLog如下所示:

=== Pre-bind state information ===
LOG: User = Sean
LOG: DisplayName = NHibernate, Version=2.1.2.4000, Culture=neutral, PublicKeyToken=aa95f207798dfdb4 (Fully-specified)
LOG: Appbase = file:///C:/Development/DefaultCollection/Sandboxes/Sean/NHibernateExample/NHibernateExample/
LOG: Initial PrivatePath = C:\Development\DefaultCollection\Sandboxes\Sean\NHibernateExample\NHibernateExample\bin
Calling assembly : NHibernate.Linq, Version=1.1.0.1001, Culture=neutral, PublicKeyToken=null.
===
LOG: This bind starts in default load context.
LOG: Using application configuration file: C:\Development\DefaultCollection\Sandboxes\Sean\NHibernateExample\NHibernateExample\web.config
LOG: Using host configuration file: 
LOG: Using machine configuration file from C:\Windows\Microsoft.NET\Framework\v4.0.30319\config\machine.config.
LOG: Post-policy reference: NHibernate, Version=2.1.2.4000, Culture=neutral, PublicKeyToken=aa95f207798dfdb4
LOG: Attempting download of new URL file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/Temporary ASP.NET Files/root/d33a79ac/1e32c532/NHibernate.DLL.
LOG: Attempting download of new URL file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/Temporary ASP.NET Files/root/d33a79ac/1e32c532/NHibernate/NHibernate.DLL.
LOG: Attempting download of new URL file:///C:/Development/DefaultCollection/Sandboxes/Sean/NHibernateExample/NHibernateExample/bin/NHibernate.DLL.
WRN: Comparing the assembly name resulted in the mismatch: Major Version
ERR: Failed to complete setup of assembly (hr = 0x80131040). Probing terminated.
我使用NuGet获得了NHibernate、NHibernate.Linq和FluentNHibernate的最新版本

谁能把我引向正确的方向


再次感谢

您应该运行兼容的软件包,您的NHibernate版本是2.1.2.4,它不是最新版本


首先添加对NHibernate 3.0和NHibernate的引用。Linq是obselete AFAIK,因为它属于版本2,而在版本3.0中,Linq功能位于NHibernate程序集本身

我用来调用session.Linq要通过,如果NHibernate.Linq是obselete,您现在将如何实现这一点?NHibernate 3.0有一个内置的Linq提供程序。非常感谢。我猜NuGet软件包正在获得最新版本(所有这些评论都对我有用。谢谢!