NHibernate系列文章十四:NHibernate事务
2016-07-06 21:03
281 查看
摘要
NHibernate实现事务机制非常简单,调用ISession.BeginTransaction()开启一个事务对象ITransaction,使用ITransaction.Commit()提交事务,使用ITransaction.Rollback()回滚事务。
标准NHibernate事务代码:
也可以使用下面的代码:
上面两段落的代码是等效的。
NHibernate实现事务机制非常简单,调用ISession.BeginTransaction()开启一个事务对象ITransaction,使用ITransaction.Commit()提交事务,使用ITransaction.Rollback()回滚事务。
标准NHibernate事务代码:
using (var session = SessionFactory.OpenSession()) { using (var transaction = session.BeginTransaction()) { try { // some date operaton codes here transaction.Commit(); } catch (HibernateException e) { transaction.Rollback(); // or log exception } } }
也可以使用下面的代码:
var session = SessionFactory.OpenSession(); var transaction = session.BeginTransaction(); try { try { // some date operaton codes here transaction.Commit(); } catch (HibernateException e) { transaction.Rollback(); throw e; // or log exception } finally { transaction.Dispose(); } } finally { session.Close(); }
上面两段落的代码是等效的。
相关文章推荐
- [3D 图形学基础] 读书笔记(3) Part_I(Getting Started) - Affine 仿射
- Windows Server 2012 R2 AD DS搭建
- APP开发实战79-Fragment和Activity比较
- hibernate插入数据库乱码的两种解决方式
- The entitlements specified in your application’s Code Signing Entitlements file do not match those s
- 教你手工检测SQL注入
- 112. Path Sum
- mysql基础---基础SQL语句
- 1016 Problem P
- typedef在函数回调上面的应用
- 文章标题
- Leetcode 101. Symmetric Tree
- collectd监控应用cpu使用情况
- 程序员的走与留?
- 欢迎使用CSDN-markdown编辑器
- APP开发实战78-Fragment简介
- Mac与Phy组成原理的简单分析
- 习题:codevs 1035 火车停留解题报告
- matlab命令
- [hdu 3652] B-number