在MVC中使用IIS在catch异常上编写文本文件

时间:2016-09-22 18:41:27

标签: asp.net-mvc-4

我尝试编写文本文件并在数据库中添加记录,而在应用程序中发生异常。这两个功能在本地工作,但是当我将代码发布到IIS功能时,它无效。所以我需要更改任何IIS设置,还是需要做其他事情。

我做了

我尝试编写文本文件并在数据库中添加记录,而在应用程序中发生异常。这两个功能在本地工作,但是当我将代码发布到IIS功能时,它无效。所以我需要更改任何IIS设置,还是需要做其他事情。

try{}
catch (Exception ex) {
   username='test';
   linenum=10;
   return RedirectToError(ex.ToString(), "Createpage", "Home", "HttpGet", linenum, "Create Lot", username);
}

public ActionResult Error()
{
  return View();
}

public ActionResult RedirectToError(string sExceptionName, string sEventName, string sControlName, string methodType, int nErrorLineNo, string sFormName, string username)
{
  Server.ClearError();
  //string username = Session["username"].ToString();
  DBEntities db = new DBEntities();
  ERROR_LOG log = new ERROR_LOG();
  log.CONTROLNAME = sControlName;
  log.METHODNAME = sEventName;
  log.METHODTYPE = methodType;
  log.FORMNAME = sFormName;
  log.Errortext = sExceptionName;
  log.LINE_NO = nErrorLineNo;
  log.USERNAME = username;
  log.ERRORDATE = DateTime.Now;
  Session["sExceptionName"] = "Exception:" + sExceptionName + "
  line:" + nErrorLineNo + "
  UserName:" + username;
  db.ERROR_LOG.Add(log);
  db.SaveChanges();

  return RedirectToAction("Error", "Home");
}

0 个答案:

没有答案