EF 事物
2015-06-04 14:27
393 查看
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data.Entity; using System.Data.Entity.Infrastructure; using System.Data.Common; namespace testEF事物 { class Program { static void Main(string[] args) { Pengbg_DataEntities db = new Pengbg_DataEntities(); DbConnection con = ((IObjectContextAdapter)db).ObjectContext.Connection; //DbConnection con = db.Database.Connection;我不明白这里为啥非要转换为ObjectContext con.Open(); using (var tran = con.BeginTransaction()) { //var r = tran.IsolationLevel; // IsolationLevel 的默认值是: ReadCommitted = 4096 在正在读取数据时保持共享锁,以避免脏读,但是在事务结束之前可以更改数据, //从而导致不可重复的读取或幻像数据。 try { db.Database.ExecuteSqlCommand(@"insert dbo.Sys_User VALUES ( N'1',N'2' ,'3' )"); db.Database.ExecuteSqlCommand(@"insert dbo.Sys_User VALUES ( N'1',N'2' ,'4' )"); db.Database.ExecuteSqlCommand(@"insert dbo.Sys_User VALUES ( N'1',N'2' )"); // 这里才是事务中的代码 tran.Commit(); } catch (Exception ex) { tran.Rollback(); } finally { db.Dispose(); con.Close(); } } con.Close(); } } }
DbContext 类继承了IObjectContextAdapter 接口,IObjectContextAdapter 接口 里面有一个只读的ObjectContext类对象。这里测试EF 是4.0 ,高版本也一样。6.0 引用 using System.Data.Entity.Core.Objects;
相关文章推荐
- sqlserver 自定义字符串分割函数.
- 百度定位SDK使用
- Binary Tree Inorder Traversal
- IE6支持兼容max-height、min-height CSS样式
- 计算视图传参
- SpringMVC 学习笔记(一) Hello World
- 想辞职 想跳槽
- Android自定义控件实战——仿淘宝商品浏览界面
- 有关Angular 2.0的一切
- Hacking PostgreSQL
- android 自定义Adapter
- 分布式MySQL数据库TDSQL架构分析
- android动态修改app桌面icon
- 第十四周阅读程序(2):标准类型数据的格式输出
- 第十四周阅读程序(1):cerr流对象
- 抽取android4.4原生浏览器的PieMenu并修改为所需的功能
- 互联网金融的五个猜想和四大趋势
- C++_运算符重载 总结
- How to mannuly configure vmtools in VM-Ware?
- Thinkphp交友手机首页简明前台、后台