ASP.NET Core Web API 如何 數據分頁 以及遇到'OFFSET' 附近有語法錯誤


最近領導叫我做的一個B/S端的小項目,突發奇想想用到core web api

今天寫數據分頁的時候,就想着 用linq分頁查詢吧,直接上代碼

_context.Skip(Size * (PageNum - 1)).Take(Size);

於是百度了一下,linq分頁的方法很簡單,一共用到的兩個linq方法:

1.skip

2.take

簡單理解一下這行代碼,Skip表示從第幾條數據開始,Take的意思是顯示多少條數據

所以代碼就表示從第幾條數據開始取出你要的size的數據

但是問題來了!!!

我總是測試接口時總是報'OFFSET' 附近有語法錯誤,我就郁悶了。

后來了解到在2008版本以前的sql是沒有這語法的,很不巧公司用的就是老舊版本。

解決方案:在Startup.cs中的連接語句中添加 標紅的那句話 就可以解決問題

services.AddDbContext<XXXContext>(opt =>
                opt.UseSqlServer(context, b => b.UseRowNumberForPaging()));


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM