예제 #1
0
        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;
        }