博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
dos.orm的事务处理
阅读量:7078 次
发布时间:2019-06-28

本文共 1104 字,大约阅读时间需要 3 分钟。

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

 

using (DbTrans trans = DbSession.Default.BeginTransaction()){    DbSession.Default.Update
(Products._.ProductName, "apple", Products._.ProductID == 1, trans); DbSession.Default.Update
(Products._.ProductName, "egg", Products._.ProductID == 2, trans); trans.Commit();}trans.Commit(); 必须提交,不然就执行不成功了。 如果使用try catch的写法如下:DbTrans trans = DbSession.Default.BeginTransaction();try{ DbSession.Default.Update
(Products._.ProductName, "apple", Products._.ProductID == 1, trans); DbSession.Default.Update
(Products._.ProductName, "egg", Products._.ProductID == 2, 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);

 

 

 

 

转载地址:http://amdml.baihongyu.com/

你可能感兴趣的文章
PCI总线原理(四)
查看>>
unity, 设置帧率上限
查看>>
linux watchdog demo hacking
查看>>
两个函数连续性的讨论
查看>>
从头開始写项目Makefile(五):嵌套运行
查看>>
3种Nginx防盗链的方法
查看>>
UVA 10057 A mid-summer night's dream.
查看>>
JavaScript中的this
查看>>
vs2005,.net的C#语言开发生成com组件的tlb文件
查看>>
自动修改电脑IP地址.bat
查看>>
当网站上线时记得设置umbDebug为false--致Umbraco开发者
查看>>
JavaScript 操作 Cookie
查看>>
Asp.net MVC3扩展之Ajax异常处理特性
查看>>
Perl语言入门-第五章-输入与输出-习题
查看>>
【转载】wpf学习笔记数据绑定8
查看>>
制作iOS应用图标的最简单方法
查看>>
淘宝JavaScript 编码风格规范
查看>>
poj 2240
查看>>
C# 理解lock
查看>>
H5添加禁止缩放功能
查看>>