基于.NET C#的 sqlite 数据库 ORM 【Easyliter】_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > 基于.NET C#的 sqlite 数据库 ORM 【Easyliter】

基于.NET C#的 sqlite 数据库 ORM 【Easyliter】

 2015/5/14 3:09:42  孙凯旋  程序员俱乐部  我要评论(0)
  • 摘要:因为工作原因经常用到SQLITE数据库,但又找不到好用的ORM所以自个整理了一个简单好用的轻量极ORM框架:Easyliter功能介绍:1、支持SQL语句操作2、支持List<T>和DataTable两种返回格式3、支持拉姆达表达示进行数据查询和分页4、内置创建实体类函数5、依赖于System.Data.SQLite使用方法如下:staticvoidMain(string[]args){varconnstr="DataSource="+System.AppDomain
  • 标签:.net C# net 数据库 数据 SQL

 

因为工作原因经常用到SQLITE数据库,但又找不到好用的ORM所以自个整理了一个简单好用的轻量极ORM框架:Easyliter

 

功能介绍:

1、支持SQL语句操作

2、支持 List<T>和DataTable两种返回格式

3、支持拉姆达表达示进行数据查询和分页

4、内置创建实体类函数

5、依赖于 System.Data.SQLite

使用方法如下:

  static void Main(string[] args)
        {
            var connstr = "DataSource=" + System.AppDomain.CurrentDomain.BaseDirectory + "mapping.sqllite";

            //依赖于 System.Data.SQLite
            Easyliter e = new Easyliter(connstr);

            //从数据库创建类
            var createCalss1 = e.CreateCalss("Sqlite.Model"/*命名空间*/, @"D:\工作\Sqlite\Sqlite\model"/*路径*/);

            //根据SQL语句创建类,多表查询会用到
            var createCalss2 = e.CreateCalssBySql("Sqlite.Model", @"D:\工作\Sqlite\Sqlite\model", "viewproduct", "select id,sku from product ");

            //删除
            // e.Delete<Product>(100);
            // e.Delete<Product>(new int [] {1,2,3});

            //更新
            //e.Update<Product>(new { sku = "x2",category_id=1 }, new { id=434 });


            ////添加
            //Product p = new Product()
            //{
            //    category_id = 2,
            //    sku = "sku",
            //    title = "title"
            //};
            //e.Insert<Product>(p);

            ////根据sql查询
            List<Product> list = e.Select<Product>("select * from product where  id>@num", new { num=100 });

            //无条件
            List<Category> list2 = e.Select<Category>();

            //单条件
            List<Product> list3 = e.Select<Product>(x=>x.id>200);

            //多条件
            List<Product> list4 = e.Select<Product>(x => x.id > 200,
                                                    x=>  x.sku=="skx"||x.sku==null);
            //多条件分页
            int count = 0;
            List<Product> list5 = e.SelectPage<Product>(1,10,ref count," id  desc",
                                            x =>x.id > 10 ,//条件1
                                            x=>true);//条件2 ...条件N
            //var dt = e.GetDataTable("select * from product order by id desc");


        }

 

 

 

源码地址:http://git.oschina.net/sunkaixuan/Easyliter

 

发表评论
用户名: 匿名