zoukankan      html  css  js  c++  java
  • C#事务的使用

    1.引入相应的命名空间

    using System.Transactions;

    2.代码事例(using (TransactionScope ts = new TransactionScope()))

     1 public JsonResult DriverCommentAdd(OrderComment orderComment)
     2         {
     3             
     4             try
     5             {
     6                 using (TransactionScope ts = new TransactionScope())
     7                 {
     8                     var order = db.Orders.SingleOrDefault(p => p.ID == orderComment.OrderID);
     9                     if (order.OrderStatus == (byte)OrderStatus.Commanded
    10                         || order.OrderStatus==(byte)OrderStatus.DriverCommanded)
    11                     {
    12                         return Json(new { state = true, msg = "该订单已经评论过了" }, JsonRequestBehavior.AllowGet);
    13                     }
    14 
    15                     //获取车主信息
    16                     var user = authMag.GetUser(Token);
    17                     orderComment.FromID = user.ID;
    18                     orderComment.ToID = order.PassengerUserID;
    19                     orderComment.CreateTime = DateTime.Now;
    20                     orderComment.IsCommentByPassgenger = false;
    21                     db.Entry<OrderComment>(orderComment).State = EntityState.Added;
    22                     if (order.OrderStatus == (byte)OrderStatus.Arrived)
    23                     {
    24                         order.OrderStatus = (byte)OrderStatus.DriverCommanded;
    25                     }
    26                     else if (order.OrderStatus == (byte)OrderStatus.PassengerCommanded)
    27                     {
    28                         order.OrderStatus = (byte)OrderStatus.Commanded;
    29                     }
    30                     db.SaveChanges();
    31                     ts.Complete();
    32 
    33                     return Json(new { state = true, msg = "评论成功" }, JsonRequestBehavior.AllowGet);
    34                 }
    35 
    36             }
    37             catch (Exception ex)
    38             {
    39                 Log.Debug("错误日志:::" + ex.StackTrace);
    40                 return Json(new { state = false, msg = "评论失败" + ex.Message }, JsonRequestBehavior.AllowGet);
    41             }
    42         }
  • 相关阅读:
    Linux学习——在虚拟机上的Linux进行磁盘分区
    Linux命令学习3——用户管理
    linux 命令学习2
    linux 命令学习1——tr命令
    基于netty的一个简单的时间服务器的实现(netty学习)
    JavaNIO
    JavaNIO中的内存映射io
    打造高效的工作环境 – SHELL 篇
    linux下怎么清理缓存
    清理系统缓存
  • 原文地址:https://www.cnblogs.com/CeleryCabbage/p/5190025.html
Copyright © 2011-2022 走看看