Subsonic 亚音速和SQL Server 2014 Web版

Subsonic 亚音速和SQL Server 2014 Web版,subsonic,sql-server-2014,subsonic2.2,Subsonic,Sql Server 2014,Subsonic2.2,我们刚刚将数据库从SQL Server Express升级到SQL Server 2014 Web版 我们也在使用亚音速作为我们的数据库提供商,不要问我为什么 当我们将代码指向新的SQL 2014版本时,我们发现了错误 似乎亚音速已经决定,在一些涉及分页的查询中,删除Where子句,这样下面的And子句就会导致错误 是否有其他人遇到过亚音速和SQL Server 2014 Web版的任何问题 我们正在使用亚音速2.2,并且在升级到3之前犹豫不决,除非我们知道它可以工作,因为这是一项重要的工作 注

我们刚刚将数据库从SQL Server Express升级到SQL Server 2014 Web版

我们也在使用亚音速作为我们的数据库提供商,不要问我为什么

当我们将代码指向新的SQL 2014版本时,我们发现了错误

似乎亚音速已经决定,在一些涉及分页的查询中,删除Where子句,这样下面的And子句就会导致错误

是否有其他人遇到过亚音速和SQL Server 2014 Web版的任何问题

我们正在使用亚音速2.2,并且在升级到3之前犹豫不决,除非我们知道它可以工作,因为这是一项重要的工作

注意
该代码适用于SQL Server 2012 Business edition。

如注释中所述,您需要更新亚音速源代码

当您从GitHub获得代码时,它位于..\SubSonic-2.0-master\SubSonic\DataProviders\DataService.cs中

下面是要更新的区域。根据您希望如何更新它,但对于使用SQL Server 2012的我,我刚刚默认为Sql2008Generator:-

case DataProviderTypeName.SQL_SERVER:
if(Utility.IsSql2005(provider))
   generator = new Sql2005Generator(sqlQuery);
else if(Utility.IsSql2008(provider))
   generator = new Sql2008Generator(sqlQuery);
else
   generator = new Sql2000Generator(sqlQuery);
   break;

对于DataProvider的数据库版本,您得到了什么?i、 e.亚音速.DataService.Provider.DatabaseVersion。不知道它是否又回到了SQL2000提供商那里。我已经在SQL Server 2012 Enterprise/Express中使用亚音速2.2多年了,没有任何问题。版本2.2非常旧,因此您需要添加一些缺少的SQL类型,但总体而言,这是一个非常简单/快速的过程。您必须获取源代码并添加一些额外的简单检查,以将SQL 2014包含在ms SQL server列表中,否则源代码会将其删除为默认的ansi SQL。不要移动到版本3。速度非常慢,根本不是亚音速,最终你会再次返回。亚音速2.2非常好,只是需要改进,这是他们从未做过的。关于我这里的第一个问题: