将旧项目从NHibernate 1.2升级到3.3

将旧项目从NHibernate 1.2升级到3.3,nhibernate,orm,nhibernate-mapping,Nhibernate,Orm,Nhibernate Mapping,我们有一个老项目,它最初是用.NET2.0和VS2005编写的,最终是在VS2008中完成的。它使用NHibernate1.2进行数据访问。作为升级的一部分,我们迁移到了.NET4.0和VS2010,但从NHibernate1.2迁移到3.3时遇到了一些问题 我们面临的主要问题是查询一个表,该表上有一个链接。我们正在运行的查询如下: IQuery query = base.Session.CreateSQLQuery("select t from Transaction t inner join

我们有一个老项目,它最初是用.NET2.0和VS2005编写的,最终是在VS2008中完成的。它使用NHibernate1.2进行数据访问。作为升级的一部分,我们迁移到了.NET4.0和VS2010,但从NHibernate1.2迁移到3.3时遇到了一些问题

我们面临的主要问题是查询一个表,该表上有一个链接。我们正在运行的查询如下:

IQuery query = base.Session.CreateSQLQuery("select t from Transaction t inner join Order o where TransactionDate >= ? && TransactionDate <= ? order by TransactionDate desc");

IQuery query=base.Session.CreateSQLQuery(“从事务t内部连接顺序o中选择t,其中TransactionDate>=?&&TransactionDate,因为
CreateSQLQuery
,顾名思义,执行原始SQL,我能想到的唯一解释是,您连接到了错误的数据库

考虑到您正在为参数placeholder使用
,我知道您没有使用SQL Server…因此可能是数据库需要连接字符串之外的数据源配置


这打开了我以前见过的选项:使用不同配置文件/注册表项的32位和64位驱动程序。

我今天一直在看初级…:-)嗯……机器是64位的,由于第三方控件的问题,IIS被告知以32位运行……可能就是这样……谢谢……明天早上会试试!还没能让它工作起来……尝试了不同的机器,不同版本的MySQL驱动程序,等等……没有运气……回到原点(不过,我已经开始看小学了!谢谢你!)