前往顾页
以后地位: 主页 > 收集编程 > .Net实例教程 >

C#异常措置throw Exception(全局、部分)

时候:2017-11-06 22:46来源:知行网www.zhixing123.cn 编辑:麦田守望者

设想再好的法度,在履行过种中也不免不会产生异常,异常措置不好就会影响用户利用,从而影响用户体验,终究会被用户丢弃,所以措置好异常是十分首要和需求的。

  C#异常措置凡是有两种体例,一种是在一个别例捕获措置异常,另外一种是全局措置异常,即一个软件、网站仅在一个大众体例中捕获异常,并且把相关异常信息保存到一个出错日记文件中,以便修改异常。

 

  一、C# throw exception 部分异常措置

  在一个别例,估计法度可能会出错,可以用 try{}catch{} 做部分异常措置,可抛出异常,也能够弹出相关的提示,代码以下:

  /// <summary>
  /// C# throw exception 读取文件实例
  /// </summary>
  /// <param name="filePath">途径</param>

  private void ReadFileException(string filePath)
  {
    try
    {
      StreamReader sr = new StreamReader(Server.MapPath(filePath));
      string line = null;
      while (line != null)
      {
        line = sr.ReadLine();
        if (line != null)
          Response.Write("<br />" + line);
      }
    }
    catch (Exception ex)
    {
      //体例一
      throw new Exception(ex.Message);

      //体例二
      throw new ArgumentNullException(ex.Message);

      //体例三
      throw new Exception("读取文件错误!");
    }
  }

  调用体例:ReadFileException(@"G:\xq\test\error.txt";);

 

 

  2、C#全局异常措置

  网站与软件(利用法度),全局异常措置不合。网站只需求在 Global 文件捕获异常便可,软件则在法度入口 main() 体例中捕获,下面以网站全局捕获异常为例,软件的实例将鄙人一篇文件中介绍。

  /// <summary>
  /// C#全局异常措置网站实例
  /// </summary>

  protected void Application_Error(object sender, EventArgs e)
  {
    Exception ex = Server.GetLastError().GetBaseException();
    SaveErrLog.AddLog(ex);//用xml保存错误日记,要本身写法度

    this.Server.ClearError();
    this.Response.Redirect("404网页");
  }

 

 

  3、C# 特别异常措置

  某些时候产生异常其实不需求记录错误信息或弹出提示,只需求改正错误便可。如翻页时,当用户输入的页码超越范围或不是数字时,只需求把它改正为最后一页或第一页,代码以下:

  /// <summary>
  /// C#特别异常捕获措置示例
  /// </summary>
  /// <param name="pageNum">页码</param>
  /// <returns>整形的页码</returns>

  private int SpecialException(string pageNum)
  {
    try
    {
      return int.Parse(pageNum);
    }
    catch
    {
      return 0;
    }
  }

顶一下
(1)
100%
踩一下
(0)
0%
------分开线----------------------------
标签(Tag):C#
------分开线----------------------------
颁发评论
请自发遵循互联网相关的政策法规,严禁公布色情、暴力、革命的谈吐。
评价:
神色:
考证码:点击我更换图片
猜你感兴趣