C# 使用Dapper时语法不正确
首先,我对一个数据库进行了查询,结果很好 该模型有两个附加属性{Skip,Take},并在执行时填充值,但是异步查询失败,原因是: @Take附近的语法不正确 我已经测试了一个更简单的查询select*from表,其中col1=@Take似乎工作得很好,非常奇怪 有什么想法吗C# 使用Dapper时语法不正确,c#,.net,dapper,C#,.net,Dapper,首先,我对一个数据库进行了查询,结果很好 该模型有两个附加属性{Skip,Take},并在执行时填充值,但是异步查询失败,原因是: @Take附近的语法不正确 我已经测试了一个更简单的查询select*from表,其中col1=@Take似乎工作得很好,非常奇怪 有什么想法吗 var query = await conn.QueryAsync<ObjectModel>( @" SELECT TOP @Take * FROM ( SELECT ROW_NUMBER() OVER(ORD
var query = await conn.QueryAsync<ObjectModel>(
@" SELECT TOP @Take * FROM ( SELECT ROW_NUMBER() OVER(ORDER BY ID) AS RoNum, *
FROM table) as p
where @Skip < RoNum ORDER BY p.ID", model);
对于SQL Server,TOP的语法如下所示:
SELECT TOP (@Take) * FROM (SELECT ROW_NUMBER() OVER(ORDER BY ID) AS RoNum, * FROM table) as p WHERE @Skip < RoNum ORDER BY p.ID
您正在使用的数据库可能遇到了相同的限制。对于SQL Server,TOP的语法如下所示:
SELECT TOP (@Take) * FROM (SELECT ROW_NUMBER() OVER(ORDER BY ID) AS RoNum, * FROM table) as p WHERE @Skip < RoNum ORDER BY p.ID
您使用的数据库可能达到了相同的限制。不确定您使用的是什么数据库,但如果是SQL,请查看偏移量/提取:不确定您使用的是什么数据库,但如果是SQL,请查看偏移量/提取: