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


    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());
    }
    }
  • 相关阅读:
    [WM]谁抢走了应用程序的性能?
    只有更烂的程序员
    [WM]n久以前写的ConnMgr类
    [WM][转]PPC中如何找到正在使用中的网络(源代码)
    让IE6支持minwidth和maxwidth的方法(JS实现) + (CSS实现)
    jQuery tab 切换函数
    wap、3g手机的端的网页头部
    复制到系统剪贴板之IE,ff兼容版
    鼠标滑过展开,js版和jquery版
    JS+CSS实现网页滚动条美化
  • 原文地址:https://www.cnblogs.com/dashanboke/p/12978838.html
Copyright © 2020-2023  润新知