0

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

我们也使用 Subsonic 作为我们的数据库提供商,不要问我为什么。

一旦我们将代码指向新的 SQL 2014 版本,就会出现错误。

似乎 Subsonic 已决定在一些涉及分页的查询中删除 Where 子句,以便后面的 And 子句导致错误。

有没有其他人遇到过 Subsonic 和 SQL Server 2014 Web 版的任何问题。

我们正在使用 Subsonic 2.2,并且对升级到 3 犹豫不决,除非我们知道它会起作用,因为这是一项主要工作。

注意 该代码适用于 SQL Server 2012 商业版。

4

1 回答 1

0

如评论中所述,您需要更新 Subsonic 的源代码。

当您从 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;
于 2016-09-30T07:04:16.157 回答