dos.orm也包含事务处理,没有太多封装,这里有几个简单的示例代码。

using (DbTrans trans = DbSession.Default.BeginTransaction())
{
DbSession.Default.Update<Products>(Products._.ProductName, "apple", Products._.ProductID == , trans);
DbSession.Default.Update<Products>(Products._.ProductName, "egg", Products._.ProductID == , trans);
trans.Commit();
}
trans.Commit(); 必须提交,不然就执行不成功了。 如果使用try catch的写法如下:
DbTrans trans = DbSession.Default.BeginTransaction();
try
{
DbSession.Default.Update<Products>(Products._.ProductName, "apple", Products._.ProductID == , trans);
DbSession.Default.Update<Products>(Products._.ProductName, "egg", Products._.ProductID == , trans);
trans.Commit();
}
catch
{
trans.Rollback();
}
finally
{
trans.Close();
}
insert、update、delete方法都提供了DbTransaction参数
所以也只是添加,修改,删除可以提交事务。 存储过程和直接sql执行也是可以添加事务的。 例如: DbTrans trans = DbSession.Default.BeginTransaction();
DbSession.Default.FromProc("Ten Most Expensive Products").SetDbTransaction(trans);
通过SetDbTransaction方法来添加事务。 FromSql也是一样。 也可以设置事务的级别,如下: DbTrans trans = DbSession.Default.BeginTransaction(IsolationLevel.ReadCommitted);

dos.orm的事务处理的更多相关文章

  1. Dos.ORM使用教程

    Dos.C#.Net使用 Dos.ORM(原Hxj.Data)于2009年发布,并发布实体生成工具.在开发过程参考了多个ORM框架,特别是NBear,MySoft.EF.Dapper等.吸取了他们的一 ...

  2. ORM系列之一:Dos.ORM

    阅读目录 引言 1.为什么使用Dos.ORM 2.配置 3.开始使用 3.1. 物理表 3.2. 实体类 3.3. 使用方法 引言 Dos.ORM(原名Hxj.Data)于2009年发布,2015年正 ...

  3. dos.orm学习地址

    os.ORM(原Hxj.Data)于2009年发布.2015年正式开源,该组件已在数百个成熟项目中应用,是目前国内.Net用户量最多.最活跃.最完善的国产ORM.初期开发过程参考了NBear与MySo ...

  4. Dos.ORM Select查询 自定义列

    自定义列 .Select( p = >new{ test = p.id}) // 同sql 列名 as 新列名 如下是 自己在写代码的例子,查询,分页,where条件,排序 var where ...

  5. dos.orm

    引言: Dos.ORM(原Hxj.Data)于2009年发布.2015年正式开源,该组件已在数百个成熟项目中应用,是目前国内用户量最大.最活跃.最完善的国产ORM.初期开发过程中参考了NBear与My ...

  6. Dos.ORM - 目录、介绍

    引言: Dos.ORM(原Hxj.Data)于2009年发布.2015年正式开源,该组件已在数百个成熟项目中应用,是目前国内用户量最大.最活跃.最完善的国产ORM.初期开发过程中参考了NBear与My ...

  7. Dos.ORM logo.Net轻量级开源ORM框架 Dos.ORM

    http://www.oschina.net/p/dos-orm http://www.oschina.net/project/lang/194/csharp http://www.cnblogs.c ...

  8. dos.ORM配置和使用

    处理oralce,sqlserver,access及其他常用数据库,下载和学习地址 1.web.config配置数据库连接字符串,以及数据库类型: <connectionStrings>& ...

  9. Dos.ORM修改数据遇到的问题

    2019年11月6日,今天使用Dos.ORM进行数据的批量修改,出现修改一条数据造成所有数据相应状态改变的情况,代码如下: 按照一步步调试的方式,排查出原因:生成的orm实体类缺少 主键 的标识,该原 ...

随机推荐

  1. Neutron: Load Balance as a Service(LBaaS)负载均衡

    load balancer 负责监听外部的连接,并将连接分发到 pool member.    LBaaS 有三个主要的概念: Pool Member,Pool 和 Virtual IP Pool M ...

  2. pm2 常用命令解析

    https://blog.csdn.net/chengxuyuanyonghu/article/details/74910875 (以上基本命令解析,一下补充) pm2 ecosystem  #在当前 ...

  3. EntityFrameworkCore中的OnModelCreating

    在我们使用EntityFrameworkCore作为数据库ORM框架的时候,不可避免的要重载DbContext中的一个虚方法OnModelCreating,那么这个方法到底是做什么的?到底有哪些作用呢 ...

  4. varnish与squid缓存效率对比实例

    前提:安装varnish.squid.webbench(压测工具) 注:varnish和squid机都未安装其他多余服务,服务器绑定域名为www.dannylinux.top  (为同一台服务器,测试 ...

  5. Mobile CI/CD 101

    This is a guest post by Slava Chernikoff, Principal Engineer at Binwell. Mobile DevOps falls under t ...

  6. Q_UNUSED 的使用

    在构建比较大型的工程的时候,若继承,重构虚函数,写数据model等等比较多的时候,会给出大量的  “未引用的形参” ,“warning: unused parameter ” 的告警.这种告警多了会影 ...

  7. Linux下的Locale详解

    locale这个单词中文翻译成地区或者地域,其实这个单词包含的意义要宽泛很多.Locale是根据计算机用户所使用的语言,所在国家或者地区,以及当地的文化传统所定义的一个软件运行时的语言环境. loca ...

  8. Mac 上的 GLFW 环境配置

    背景:GLFW 一.下载和编译 从官网下载源代码包:http://www.glfw.org/download.html (我下载的是 github 仓库上的) 按官方指南编译.总结如下: cd glf ...

  9. 树莓派中QT实现I2C

    树莓派中QT实现I2C 在QT中实现 I2C 使用的驱动为 wiringPi 库的引入 LIBS += -lwiringPi LIBS += -lwiringPiDev 代码实现 widget.h 中 ...

  10. CF5E 【Bindian Signalizing】

    题意 \(n\)座山组成一个环,相连的圆弧上其他山它们高那么这两座山能互相看到,求能看到的山的组数. 题解 设\(left[i]\)表示左边第一个比\(i\)高的位置,同理\(right[i]\)表示 ...