博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
'OFFSET' 附近有语法错误。 在 FETCH 语句中选项 NEXT 的用法无效。
阅读量:5230 次
发布时间:2019-06-14

本文共 1285 字,大约阅读时间需要 4 分钟。

'OFFSET' 附近有语法错误。 在 FETCH 语句中选项 NEXT 的用法无效。
最近在使用asp.net core的时候,采用take().skip()分页的时候报如下错误:
SqlException: 'OFFSET' 附近有语法错误。 在 FETCH 语句中选项 NEXT 的用法无效。
这个主要是在sql server 2008中,不支持FETCH和NEXT语句(sql server 2012才支持)。
之后在网上参考了一下其他的文章,最终解决了这个问题,记录一下,方便后来人。
解决方法:
修改“StartUp.cs”文件,具体代码截图如下:
1.普通修改方式
// This method gets called by the runtime. Use this method to add services to the container.
public void ConfigureServices(IServiceCollection services)
{
// Add framework services.
services.AddMvc();
 
var connection = @"Data Source=tcp:111.111.111.111,1044;
Initial Catalog=xxx;Persist Security Info=True;User ID=xxxx;Password=xxxxx";
services.AddDbContext<NoteContext>(options => options.UseSqlServer(connection,
b=>b.UseRowNumberForPaging()));
 
services.AddScoped<Repository.INoteRepository,Repository.NoteRepository>();
services.AddScoped<Repository.INoteTypeRepository, Repository.NoteTypeRepository>();
}
 
2.abp修改方式
public static class DbContextOptionsConfigurer
{
public static void Configure(
DbContextOptionsBuilder<SSODbContext> dbContextOptions,
string connectionString
)
{
/* This is the single point to configure DbContextOptions for testDbContext */
dbContextOptions.UseSqlServer(connectionString ,
b => b.UseRowNumberForPaging());
}
}

转载于:https://www.cnblogs.com/yhdkzy/p/7919426.html

你可能感兴趣的文章
Enumerable 类提供的表达式方法
查看>>
Qt HTTP内部构架
查看>>
OpenUDID 实现UDID替代
查看>>
前端--HTML
查看>>
c语言使用指针对int数组的求和
查看>>
简单实现Ubuntu16.04 + caffe2 + CUDA9.0 + cuDNN8.0
查看>>
windows下编译C/C++代码
查看>>
Meshlab
查看>>
[游戏开发-学习笔记]菜鸟慢慢飞(二)-迷宫
查看>>
用户和用户组
查看>>
cpp algorithm
查看>>
ASP.NET Core 企业级开发架构简介及框架汇总
查看>>
点分治
查看>>
【读书笔记】态度
查看>>
linux mint 18.2 install erlang
查看>>
zbb20181012 spring,aop,execution切入点表达式
查看>>
一个DIV拖放的案例
查看>>
hdu 1160 FatMouse's Speed
查看>>
python3字典:获取json响应值来进行断言
查看>>
Nim证明即推导
查看>>