HTML5技术

Asp.Net MVC学习总结(三)——过滤器你怎么看? - SeeYouBug(4)

字号+ 作者:H5之家 来源:H5之家 2017-03-06 17:01 我要评论( )

1 @model HandleErrorInfo SpecialErrorThere was a@Model.Exception.GetType().Namewhile rendering@Model.ControllerName 's @Model.ActionName action 运行结果如下: 创建自定义的异常过滤器 如果我们对异常过

1 @model HandleErrorInfo SpecialErrorThere was a@Model.Exception.GetType().Namewhile rendering@Model.ControllerName's @Model.ActionName action

运行结果如下:

创建自定义的异常过滤器

如果我们对异常过滤器有特殊的需求,可以通过自定义的异常过滤器来完成,创建自定义异常过滤器必须实现IExceptionFilter接口,该接口代码如下:

Result

MyExectionAttribute:FilterAttribute,IExceptionFilter 2 { OnException(ExceptionContext filterContext) 4 { 5 if(!filterContext.ExceptionHandled&& 6 filterContext.Exception is NullReferenceException) 7 { ); 9 filterContext.ExceptionHandled = true; 10 } 11 } 12 }

然后在项目根目录添加一个名为Content的文件夹,在该文件夹下创建SpeciErrorPage.html文件,当异常被处理时,将以这个错误页面显示个用户。该页面代码如下:

Sorrythis is a Excetption test There was aNullReferenceException while renderingHome's Index action

在控制器中应用MyExection异常过滤器,并主动让其抛出一个空引用异常,以便测试。

HomeController : Controller 2 { 3 [MyExection] 4 public ActionResult Index() 5 { NullReferenceException(); 7 } 8 }

运行结果如下:

总结:本文章简单总结了对过滤器的理解以及如何使用MVC框架内置基本的过滤器和如何自定义过滤器及应用。

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • ASP.NET Core MVC上传、导入、导出知多少 - Jeffcky

    ASP.NET Core MVC上传、导入、导出知多少 - Jeffcky

    2017-03-02 18:01

  • HTML5标签学习笔记 - 就只是小茗

    HTML5标签学习笔记 - 就只是小茗

    2017-02-28 11:00

  • 小白学习H5从入门到放弃 - strength小宝

    小白学习H5从入门到放弃 - strength小宝

    2017-02-27 16:01

  • 跨专业学习编程的苦逼生活 QWQ嘤嘤嘤(第一周) - 天冷吃冰棍儿

    跨专业学习编程的苦逼生活 QWQ嘤嘤嘤(第一周) - 天冷吃冰棍儿

    2017-02-27 15:01

网友点评
A