• Linq EF 添加数据执行事务处理


        

    在EF4.1的DBContext中实现事务处理(BeginTransaction)和直接执行SQL语句的示例                         

        
        
                

     
     

    在EF4.1的DBContext中实现事务处理(BeginTransaction)和直接执行SQL语句的示例

     (2012-03-13 10:12:48)
    标签: 

    linq

     

    ef

     

    entity

     

    dbcontext

     

    事务处理

     

    executesql

     

    it

     

            public ActionResult _Function21Update(string id)         {             GEN_PARAMETER parameter = db.GEN_PARAMETER.Find(id);             if (TryUpdateModel(parameter))             {

                    if (ModelState.IsValid)                 {                     parameter.LAST_UPDATE_DATE = DateTime.Now;                     DbConnection con = ((IObjectContextAdapter)db).ObjectContext.Connection;                     con.Open();                     using(var tran = con.BeginTransaction())                     {                         try                         {                             string testsql = "update test_current set value = '" + parameter.VALUE + "'";                             db.Database.ExecuteSqlCommand(testsql);                             db.SaveChanges();                             //testsql = "insert1 into test_log (text) values ('code:" + parameter.CODE + "value:" + parameter.VALUE + "')";                             testsql = "insert into test_log (text) values ('code:" + parameter.CODE + "value:" + parameter.VALUE + "')";                             db.Database.ExecuteSqlCommand(testsql);

                                tran.Commit();                         }                         catch (Exception ex)                         {                             tran.Rollback();                             db.Entry(parameter).Reload();                             Global.Logger().Error(SysAdminErr.dbSaveErr + ex.Message, ex);                         }                     }                     con.Close();                 }             }             return View(new GridModel(db.GEN_PARAMETER.Where(p => p.ENABLED == "0")));         }

     


     

  • 相关阅读:
    iOS 在Host App 与 App Extension 之间发送通知
    将博客搬至CSDN
    ios7 UITableView 分割线在 使用selectedBackgroundView 选中时有些不显示
    UITableViewCell 分割线如何满屏
    CocoaPods管理的项目移植到别人电脑后找不到头文件
    iOS Touch ID 简易开发教程
    iOS内存泄露统计
    iOS开发之Objective-c的AES128加密和解密算法的实现
    iOS中使用RNCryptor对资源文件加密
    iOS持续集成:命令行创建工程
  • 原文地址:https://www.cnblogs.com/yelanggu/p/6760955.html
Copyright © 2020-2023  润新知