Net Core:'OFFSET' 附近有语法错误。 在 FETCH 语句中选项 NEXT 的用法无效

 报错语句

return lr.Skip(@in.Skip).Take(@in.PageSize).ToList();

报错:

"'OFFSET' 附近有语法错误。在 FETCH 语句中选项 NEXT 的用法无效。"

原因

这个主要是在数据库SQL Server 2008不支持Fetch和Next语句(SQL Server 2012才支持)。

可以这么理解,我们需要解决的问题是向下兼容数据库。

解决方法

找到数据库连接,语句,添加RowNumberForPaging配置。

原代码

options.UseSqlServer(connection)

修改后代码

options.UseSqlServer(connection,b=>b.UseRowNumberForPaging())

参考网址

https://www.cnblogs.com/yhdkzy/p/7919426.html

posted @ 2020-12-14 23:15  陆陆无为而治者  阅读(1771)  评论(0编辑  收藏  举报