Welcome 微信登录

首页 / 网页编程 / ASP.NET / 使用ASP.NET 2.0记录错误

使用ASP.NET 2.0记录错误2011-12-06 未知 在本文中,我们将通过一个简单的处理来记录在我们的网站中的错误和异常.我们会这样操作:每当遇到程序错误时,将使用者导航到一个单独的页面.同时,错误将被记录到服务器上的一个文本文件.每当错误发生时,我们将以日志的形式每天记录.说了这么多,让我们来看一些代码。

步骤一:首先创建一个错误文件夹用于存放错误日志文件.鼠标右键站点 > 创建新文件夹.将该文件夹命名为"Error". 如果站点中没有 Web.config 文件时,请添加一个. 右键站点 > 添加新项目 > Web.config。

步骤二:现在我们要创建一个错误处理的代码.我们只需要右键站点 > 添加新项目 > 选择类. 重命名该类为"ErrHandler.cs" ,然后单击 "添加" 按钮.当你这么操作的时候,会弹出一个对话框,是否要将这个类文件保存在"App_Code"里面,我们选择接受。

步骤三:现在我们为ErrHandler.class添加一些功能.该类用于接受错误信息并将错误信息保存在一个文本文件中.每天创建一个这样的文本文件.如果已经存在相同的文件名时,错误信息将会追加到这个文件中.否则,就创建一个新文件,并将错误信息写入该文件。

代码看来如下:

/// Handles error by accepting the error message  /// Displays the page on which the error occured  public static void WriteError(string errorMessage)  {    try    {      string path = "~/Error/" + DateTime.Today.ToString("dd-mm-yy") + ".txt";      if (!File.Exists(System.Web.HttpContext.Current.Server.MapPath(path)))      {        File.Create(System.Web.HttpContext.Current.Server.MapPath(path)).Close();      }      using (StreamWriter w = File.AppendText(System.Web.HttpContext.Current.Server.MapPath(path)))      {        w.WriteLine("
Log Entry : ");        w.WriteLine("{0}", DateTime.Now.ToString(CultureInfo.InvariantCulture));        string err = "Error in: " + System.Web.HttpContext.Current.Request.Url.ToString() +               ". Error Message:" + errorMessage;        w.WriteLine(err);        w.WriteLine("__________________________");        w.Flush();        w.Close();      }    }    catch (Exception ex)    {      WriteError(ex.Message);    }  }
这就是我们的ErrHandler类了.然后我们来看看如何使用这个类和在Page级中(Application级中)处理错误。