ORM PetaPoco 框架的 CRUD 操作

PetaPoco 的查询操作

     public IEnumerable<T> GetAll(string sqlString, object[] obj)
        {
            try
            {
                IEnumerable<T> target;
                using (PetaPoco.Database db=new PetaPoco.Database (DbConfig.ConnectionString))
                {
                    target= db.Fetch<T>(sqlString, obj);
                }
                return target;
            }
            catch (Exception ep)
            {
              // 系统错误日志   级别: 严重错误
                return null;
            }
        }
        public IEnumerable<T> GetAll(string sqlString)
        {
            try
            {
                IEnumerable<T> target;
                using (PetaPoco.Database db = new PetaPoco.Database(DbConfig.ConnectionString))
                {
                    target = db.Fetch<T>(sqlString);
                }

                return target;
            }
            catch (Exception ep)
            {
                // 系统错误日志   级别: 严重错误
                return null;
            }
        }
        public T Get(string sqlString, object[] obj)
        {
            try
            {
                T target;
                using (PetaPoco.Database db = new PetaPoco.Database(DbConfig.ConnectionString))
                {
                    target = db.SingleOrDefault<T>(sqlString, obj);
                }
                return target;
            }
            catch (Exception ep)
            {
                return null;
            }
        }

使用 PetaPoco 时行分页查询

 public PetaPoco.Page<T> GetPageData(int pageIndex,int PageSize,string sqlString)
        {
            try
            {
                PetaPoco.Page<T> target;
                using (PetaPoco.Database db = new PetaPoco.Database(DbConfig.ConnectionString))
                {
                    target = db.Page<T>(pageIndex, PageSize, sqlString);
                }

                return target;
            }
            catch (Exception ep)
            {
                // 系统错误日志   级别: 严重错
               return null;
            }
        }
public PetaPoco.Page<T> GetPageData(int pageIndex, int PageSize, string sqlString,object[] obj)
        {
            try
            {
                PetaPoco.Page<T> target;
                using (PetaPoco.Database db = new PetaPoco.Database(DbConfig.ConnectionString))
                {
                    target = db.Page<T>(pageIndex, PageSize, sqlString,obj);
                }
                return target;
            }
            catch (Exception ep)
            {
                // 系统错误日志   级别: 严重错误
                return null;
            }
        }

PetaPoco  插入数据

        public bool Insert(T t)
        {
            try
            {
              object obj=null;
                using (PetaPoco.Database db = new PetaPoco.Database(DbConfig.ConnectionString))
                {
                   obj= db.Insert(t);
                }
                return (obj !=null) ? true:false;
            }
            catch (Exception ep)
            {
                // 系统错误日志   级别: 严重错误
                return false;
            }
        }

PetaPoco  删除操作

      public bool Delete(T t)
        {
            try
            {
               int i=0;

                using (PetaPoco.Database db = new PetaPoco.Database(DbConfig.ConnectionString))
                {
                    i= db.Delete(t);
                }
                return (i>0)?true:false;
            }
            catch (Exception ep)
            {
                // 系统错误日志   级别: 严重错误
                return false;
            }
        }

PetaPoco  更新操作

    public bool Update(T t)
        {
            try
            {
               int i =0;

                using (PetaPoco.Database db = new PetaPoco.Database(DbConfig.ConnectionString))
                {
                    i= db.Update(t);
                }
                return (i>0) ? true: false;
            }
            catch (Exception ep)
            {
                // 系统错误日志   级别: 严重错误
                return false;
            }
        }

PetaPoco 中使用事务

     public bool Insert(List<T> ts)
        {
            try
            {
              object obj=null;
                using (PetaPoco.Database db = new PetaPoco.Database(DbConfig.ConnectionString))
                {
                   db.BeginTransaction(); // 使用事务
                   if(ts !=null && ts.Count>0)
                   {
                       foreach (var t in ts)
                       {
                          obj= db.Insert(t);
                       }
                      db.CompleteTransaction(); // 提交事务
                      return true;
                   }
                }
                return false;
            }
            catch (Exception ep)
            {
                // 系统错误日志   级别: 严重错误
                return false;
            }
        }
时间: 2024-10-12 21:25:57

ORM PetaPoco 框架的 CRUD 操作的相关文章

ORM Nhibernet 框架的 CRUD 操作

Nhibernet 的基本语法: private ISession _session; public ISession Session { set { _session = value; } } public QueryCriteriaAPI(ISession session) { _session = session; } #region 语法学习 /// <summary> /// 创建ICriteria实例 /// </summary> /// <returns>

【原】Bootstrap+Knockout.JS+ASP.Net MVC3+PetaPOCO实现CRUD操作

1.需求: 1.1)页面要美观大气 1.2)前端代码要简洁清晰,要用MVC或是MVVM框架 1.3)服务端要用MVC框架,要Rest风格 1.4)数据访问要用ORM 2.效果: 2.1)列表 2.2)分页 2.3)新增 2.4)修改 3.技术考虑: 3.1)考虑到页面的美观大气,在没有美工的情况下,Bootstrap的确是一个很好的选择 3.2)前端框架选择了MVVM的Knockout.JS,大概是因为Microsoft在自己的项目模板里都自带了这个框架吧,所以一直对它挺有好感 3.3)ASP.

.net的轻量级ORM -- PetaPoco/NPOCO框架使用说明

.net的轻量级ORM -- PetaPoco/NPOCO框架使用说明(具体参看:http://www.toptensoftware.com/petapoco/) 从11年就开始尝试使用轻量级ORM:PetaPoco,下文是基本使用方法.另外NPoco是PetaPoco的升级版,是另外一个人维护,原版PetaPoco基本不再维护.NPoco大多数用法和PetaPoco一致,另外有些额外的功能.NPoco我会考虑再写一篇文章介绍. 运行查询 首先定义POCO 注:POCO意思是Plain Old

自制MVC框架CRUD操作、列表、分页显示插件介绍

这里涉及到的操作都是引用自Stephen.DALService数据层.数据访问层实现方式在后文中我会仔细的说明,先说明一下数据操作集成的插件. 1).InsertAttribute 用于插入记录. 状态返回值:假定hashtable传递变量名的是context ,那么返回值可通过context[InsertAttribute.ValueKey]得到,推荐返回的是插入的主键ID值,当然这个是由数据层设定的. 有以下属性可进行设置: 属性名 作用 默认值 选项说明 其它说明 Key 映射路径.格式如

Farseer.net轻量级ORM开源框架 V1.x 入门篇:存储过程数据操作

导航 目   录:Farseer.net轻量级ORM开源框架 目录 上一篇:Farseer.net轻量级ORM开源框架 V1.x 入门篇:存储过程实体类映射 下一篇:Farseer.net轻量级ORM开源框架 V1.x 入门篇:表/视图缓存操作 TableCahceSet.ViewCahceSet 前言 在上篇中,我们学会了存储过程的关系映射,其中知道了存储过程需要使用:ProcSet作为操作的上下文,以及在Field特性上,我们知道了新的两个属性用来存储过程的参数输入输出. 在上篇末尾,提到了

Farseer.net轻量级ORM开源框架 V1.x 入门篇:视图的数据操作

导航 目   录:Farseer.net轻量级ORM开源框架 目录 上一篇:Farseer.net轻量级ORM开源框架 V1.x 入门篇:视图实体类映射 下一篇:Farseer.net轻量级ORM开源框架 V1.x 入门篇:存储过程实体类映射 前言 我们知道对于关系数据库,视图的出现可以在一定的情况下减少因要进行数据关联而带来的大量SQL语句,它可以让我们就像访问一张表一样的简单操作. 作为ORM来说,支持视图也是一项最基础的工作.然而大部份的ORM中,对视图没有特意去提供这个类,因为视图的SQ

python-django框架-orm相关继续&amp;ORM的增删改查操作_20191110

python-django框架-orm相关继续 orm不常用字段: 1,BigIntegerField(IntegerField):可以存手机号,也可以使用字符串存储手机号, - 长整型(有符号的) -9223372036854775808 - 9223372036854775807 2,BooleanField(Field) - 布尔值类型 3,DateTimeField(DateField) - 日期+时间格式 YYYY-MM-DD HH:MM[:ss[.uuuuuu]][TZ] 4,时间间

【SSH三大框架】Hibernate基础第五篇:利用Hibernate完成简单的CRUD操作

这里利用Hibernate操作数据库完成简单的CRUD操作. 首先,我们需要先写一个javabean: package cn.itcast.domain; import java.util.Date; public class User { private int id; private String name; private Date birthday; public int getId() { return id; } public void setId(int id) { this.id

【SSH三大框架】Hibernate基础第五篇:利用Hibernate完毕简单的CRUD操作

这里利用Hibernate操作数据库完毕简单的CRUD操作. 首先.我们须要先写一个javabean: package cn.itcast.domain; import java.util.Date; public class User { private int id; private String name; private Date birthday; public int getId() { return id; } public void setId(int id) { this.id