在que中添加方法以便以后执行

时间:2014-11-05 07:12:29

标签: c# asp.net sql-server asp.net-mvc linq

我的mvc银行应用程序中有这个PerformTransaction();方法。我的要求是insertTransaction();updatetransaction();这是重要的执行方法。

在执行此2方法之后,我想向用户显示成功消息,并且在backgound中,剩余的方法应该在以后执行。因为每次调用这些方法都会对我的应用程序性能造成严重影响。我正在使用隔离级读取提交。

此日志记录过程非常耗时,应该在后台运行。 (我使用Linq to sql)

实现这一目标的正确方法是什么。我应该使用哪种方法?

public ActionResult PerformTransaction(int id = 0)
{
   insertTransaction();
   updatetransaction();
   //later execution
   insertlogg();
   updatelogg();
   logger();

    return Json(new
            {
                success = status.Status,
                message = status.Message
            });
}

1 个答案:

答案 0 :(得分:0)

我建议您使用System.Threading,以便在执行后继续使用。

例如:

public ActionResult PerformTransaction(int id = 0)
{
   insertTransaction();
   updatetransaction();
   //later execution
   System.Threading.Thread TInsert = new System.Threading.Thread(insertlogg());
   TInsert.Start();
   System.Threading.Thread TUpdate = new System.Threading.Thread(updatelogg());
   TUpdate.Start();
   System.Threading.Thread TLogger = new System.Threading.Thread(logger());
   TLogger.Start();

   return View("Edit");
}

有关线程的详细信息,请参阅MSDN

我没有看到您的成功日志的任何示例,所以我不会把它放在这里。