PetaPoco使用

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <connectionStrings>
    <add name="connectionStringName" connectionString="server=localhost;database=0914;uid=sa;password=850414;" />
  </connectionStrings>
</configuration>
复制代码
复制代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    public class Achievement
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public string Course { get; set; }
        public int Degree { get; set; }
    }
}
复制代码
复制代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            var db = new PetaPoco.Database("connectionStringName");

            // Show all articles    
            foreach (var a in db.Query<Achievement>("SELECT * FROM Achievement"))
            {
                Console.WriteLine("{0} - {1}", a.Id, a.Name);
            }

            //分页
            Console.WriteLine("分页");
            PetaPoco.Page<Achievement> result = db.Page<Achievement>(1, 3, // <-- page number and items per page
        "SELECT * FROM Achievement WHERE Course=@0 ORDER BY Degree DESC", "C#程序设计");
            result.Items.ForEach(delegate(Achievement entity) {
                Console.WriteLine("PageItem:{0}-{1}-{2}-{3}",entity.Id,entity.Name,entity.Course,entity.Degree);
            });

            Console.Read();
        }
    }
}


复制代码
注意:
  这里的分页执行的语句是:

SELECT * FROM 
(SELECT ROW_NUMBER() OVER (ORDER BY Degree DESC) peta_rn, * FROM Achievement WHERE Course=N'C#程序设计') peta_paged 
WHERE peta_rn>0 AND peta_rn<=3

posted @ 2017-04-11 13:38  shiningrise  阅读(235)  评论(0编辑  收藏  举报