public async Task QueryVM_SQL() { xx = string.Empty; var totalSql = @" select count(*) from ( select agent9.[Name] as XXXX, agent9.[PathId] as YYYY from [agent] as agent9 inner join [agentinventoryrecord] as record9 on agent9.[Id]=record9.[AgentId] where agent9.[AgentLevel]=@AgentLevel ) temp; "; var dataSql = @" select agent9.[Name] as XXXX, agent9.[PathId] as YYYY from [agent] as agent9 inner join [agentinventoryrecord] as record9 on agent9.[Id]=record9.[AgentId] where agent9.[AgentLevel]=@AgentLevel order by agent9.[Id] desc offset 0 rows fetch next 10 rows only; "; var paras = new List <XParam> { new XParam { ParamName = "AgentLevel", ParamValue = AgentLevel.DistiAgent, ParamType = ParamTypeEnum.Int_MySQL_SqlServer } }; var paging = new PagingResult <AgentVM>(); paging.PageIndex = 1; paging.PageSize = 10; paging.TotalCount = await Conn2.QueryOneAsync <int>(totalSql, paras); paging.Data = await Conn2.QueryListAsync <AgentVM>(dataSql, paras); Assert.IsTrue(paging.Data.Count == 10); xx = string.Empty; }