.net 获得;Linq不是NHibernate.ISession的成员;将Linq实现为NHibernate时出错
我正努力让Linq去NHibernate工作。我引用了NHibernate、NHibernate.Linq和NHibernate.ByteCode.Castle。我在同一个文件夹中还有所有其他依赖项 代码/错误消息:.net 获得;Linq不是NHibernate.ISession的成员;将Linq实现为NHibernate时出错,.net,vb.net,nhibernate,linq-to-nhibernate,.net,Vb.net,Nhibernate,Linq To Nhibernate,我正努力让Linq去NHibernate工作。我引用了NHibernate、NHibernate.Linq和NHibernate.ByteCode.Castle。我在同一个文件夹中还有所有其他依赖项 代码/错误消息: Public Function GetProjectsByName(ByVal ProjectName As String) As List(Of Project) Return (From x In _session.Linq(Of Project)() Where
Public Function GetProjectsByName(ByVal ProjectName As String) As List(Of Project)
Return (From x In _session.Linq(Of Project)() Where x.Name.Equals(Project))
End Function
“Linq不是NHibernate.ISession的成员”
。。。告诉我没有加载LINQ扩展。使用NHibernate.Linq似乎非常容易使用,因此没有关于如何设置它的教程。(或者至少我找不到)
你知道我会错过什么吗
更新:
数据访问层的引用
提前感谢问题已解决!这确实是由于程序集的不同版本,就像Tomas Pajonk建议的那样 以下程序集版本一起工作:
- NHibernate 2.1.0.4000
- NHibernate.Linq 1.0.0.4000
- 城堡核心1.1.0.0
- Castle.DynamicProxy 2.0.3.0(2.0.3.4333)
- Iesi.Collections 1.0.1.0
- log4net 1.2.10.0
- NHibernate.ByteCode.Castle 2.1.0.4000
- Antlr3.Runtime 3.1.0.39271
感谢所有帮助过我的人 问题解决了!这确实是由于程序集的不同版本,就像Tomas Pajonk建议的那样 以下程序集版本一起工作:
- NHibernate 2.1.0.4000
- NHibernate.Linq 1.0.0.4000
- 城堡核心1.1.0.0
- Castle.DynamicProxy 2.0.3.0(2.0.3.4333)
- Iesi.Collections 1.0.1.0
- log4net 1.2.10.0
- NHibernate.ByteCode.Castle 2.1.0.4000
- Antlr3.Runtime 3.1.0.39271
感谢所有帮助过我的人 我认为这样问很愚蠢,但是您已经导入了名称空间?是的,目前我已经导入了NHibernate、NHibernate.Linq、System.Linq和我的Entities项目的语句。您是否引用了appropiate.dll文件?我忘了用C#、NHibernate和VS2010来做这件事。在这里,我在我的帖子中添加了一个我的参考资料的屏幕截图。你用过Castle还是LinFu?你从哪里得到的NHibernate.Linq(即它是什么版本)?我想问这个问题很傻,但是你已经导入了名称空间?是的,目前我有NHibernate、NHibernate.Linq、System.Linq和我的Entities项目的导入语句。你引用过appropiate.dll文件吗?我忘了用C#、NHibernate和VS2010来做这件事。在这里,我在我的帖子中添加了一个我的参考资料的屏幕截图。你用过Castle还是LinFu?你到底从哪里得到的NHibernate.Linq(是什么版本的)?我很高兴你把它整理好了。有时这么多的助手库让人头晕目眩。@格言:你还需要NHibernate.ByteCode.Castle.dll和Antlr3.Runtime.dllI我很高兴你能解决它。有时太多的帮助程序库让人头晕目眩。@座右铭:您还需要NHibernate.ByteCode.Castle.dll和Antlr3.Runtime.dll