使用ASP.NET 2.0记录错误

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

步骤一:首先创建一个错误文件夹用于存放错误日志文件.鼠标右键站点 > 创建新文件夹.将该文件夹命名为"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("\r\nLog 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级中)处理错误。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索文件
, 错误
, httpcontext
, 一个
, WriteLine
, 记录错误
, current
, 错误记录
Path2.0
,以便于您获取更多的相关知识。

时间: 2024-11-02 14:19:21

使用ASP.NET 2.0记录错误的相关文章

【翻译】使用ASP.NET 2.0记录错误

原文:http://www.dotnetcurry.com/ShowArticle.aspx?ID=94&AspxAutoDetectCookieSupport=1 使用ASP.NET 2.0记录错误 在我们开发和操作一个网站的过程中不可避免会发生错误和失败的情况. ASP.NET 2.0 提供了跟踪,instrumentation以及错误处理机制来检测和修补程序中的问题. 在本文中,我们将通过一个简单的处理来记录在我们的网站中的错误和异常.我们会这样操作:每当遇到程序错误时,将使用者导航到一个

艾伟:【翻译】使用ASP.NET 2.0记录错误

原文:http://www.dotnetcurry.com/ShowArticle.aspx?ID=94&AspxAutoDetectCookieSupport=1 使用ASP.NET 2.0记录错误 在我们开发和操作一个网站的过程中不可避免会发生错误和失败的情况. ASP.NET 2.0 提供了跟踪,instrumentation以及错误处理机制来检测和修补程序中的问题. 在本文中,我们将通过一个简单的处理来记录在我们的网站中的错误和异常.我们会这样操作:每当遇到程序错误时,将使用者导航到一个

asp.net 4.0 使用log4net记录错误日志例子

原来也一直用log4net记录日志,但是是在.net2.0 上用的.最近用到新的项目是vs2015开发的,要用log4net,今天将.net 4.0 使用log4net记录错误日志的步骤,分享给大家. 1.首先到http://logging.apache.org/log4net/download_log4net.cgi 下载最新版本的log4net.如果不需要修改log4net的源代码的话,建议下载二进制的就可以了.最新版本是log4net 1.2.15. IT分享 2.下载好log4net.d

在ASP.NET 2.0中操作数据之五十一:从GridView的页脚插入新记录_自学过程

导言: 正如教程<概述插入.更新和删除数据>里探讨过的一样, GridView, DetailsView和FormView Web控件都有内置的修改数据的功能.当声明绑定到数据源控件时,可以快速而方便地修改数据--甚至不用写一行代码.不幸的是,只有DetailsView和FormView控件提供了内置的插入.编辑.删除功能,而 GridView控件只支持编辑.删除功能.不过,稍许努力,我们就能使GridView控件包含一个插入界面. 为了给GridView添加插入功能,我们要决定如何添加新记录

在ASP.NET 2.0中操作数据之五十四:添加新记录时包含一个文件上传选项_自学过程

导言: 在前面2节教程,我们探讨了如何使用FileUpload控件从客户端向服务器上传文件,以及如何在数据Web控件里显示二进制数据. 在本节,我们将创建一个web页面以添加新的种类.除了为类的name和description属性添加TextBoxes控件外,我们还要在页面上添加2个FileUpload控件--一个用来上传新类的图片,另一个用来上传类的小说明册子.上传的图片将直接存储在新记录的Picture列.与此相反,小册子将存储在~/Brochures 文件夹,同时将文件路径存储在新记录的B

asp.net 2.0中用GRIDVIEW插入新记录

asp.net|插入 看了下国外某巨牛的BLOG,大概是讲asp.net 2.0中用GRIDVIEW插入新记录的,方法比较特别,但效果一般,故将程序转之,较为简单,不做解释等.<%@ Page Language="C#" ClassName="Default_aspx" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/

asp.net 2.0中一次性更新所有GRIDVIEW的记录

asp.net 在asp.net 2.0中,gridview控件是十分不错的控件.有的时候,可能一个GRIDVIEW控件中的各行都是文本框,如何一次性更新所有修改过的记录呢?有两种方法,一种是使用sqldatasource来更新所有记录,但这个方法比较慢,因为每更新一条记录都要建立数据连接并执行updatecommand,会影响性能,但还是先来看下实现方法: <%@ Page Language="C#" %> <script runat="server&qu

ASP.NET 2.0数据教程之五十六:添加新记录时包含一个文件上传选项

返回"ASP.NET 2.0数据教程目录" 导言: 在前面2节教程,我们探讨了如何使用FileUpload控件从客户端 向服务器上传文件,以及如何在数据Web控件里显示二进制数据. 在本节 ,我们将创建一个web页面以添加新的种类.除了为类的name和description属性 添加TextBoxes控件外,我们还要在页面上添加2个FileUpload控件 --一个用来上传新类的图片,另一个用来上传类的小说明册子.上 传的图片将直接存储在新记录的Picture列.与此相反,小册子将存储

ASP.NET 2.0数据教程之五十三:从GridView的页脚插入新记录

返回"ASP.NET 2.0数据教程目录" 导言: 正如教程<概述插入.更新和删除数据>里探讨过的一样, GridView, DetailsView和FormView Web控件都有内置的修改数据的功能.当声明 绑定到数据源控件时,可以快速而方便地修改数据--甚至不用写一 行代码.不幸的是,只有DetailsView和FormView控件提供了内置的插入.编辑. 删除功能,而 GridView控件只支持编辑.删除功能.不过,稍许努力,我们就能 使GridView控件包含一个