网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 大学论文导航 设计下载 最新论文 下载排行 原创论文 论文源代码
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > ASP.net > 正文

ASP.NET MVC基于异常处理的解决方案

来源:http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 13/01/05
会将原来的异常和处理后的异常进行重新抛出。现在我们将该属性设置为“ThrowNewException”,意味着我们会将处理后的异常重新抛出来。

  1. <exceptionHandling> 
  2. <exceptionPolicies> 
  3. <addnameaddname="myPolicy"> 
  4. <exceptionTypes> 
  5. <addnameaddname="InvalidUserNameException"type="Artech.Mvc.ExceptionHandling.Models.InvalidUserNameException, Artech.Mvc.ExceptionHandling"  
  6. postHandlingAction="ThrowNewException"> 
  7. ...  
  8. <addnameaddname="UserNamePasswordNotMatchException"type="Artech.Mvc.ExceptionHandling.Models.UserNamePasswordNotMatchException, Artech.Mvc.ExceptionHandling"9:postHandlingAction="ThrowNewException"> 
  9. ...  
  10. </add> 
  11. </exceptionTypes> 
  12. </add> 
  13. </exceptionPolicies> 
  14. </exceptionHandling> 

按照我们上面的异常处理策略,在这种情况下我们将采用“错误页面”的方式来进行异常处理。也HandleErrorAttribute的处理方式类似,我们支持异常类型和Error View之间的匹配关系,而这是通过类似于如下的配置来定义的。值得一提的是,这里的异常类型是经过处理后重新抛出的异常

  1. <exceptionHandling> 
  2. <exceptionPolicies> 
  3. <addnameaddname="myPolicy"> 
  4. <exceptionTypes> 
  5. <addnameaddname="InvalidUserNameException"type="Artech.Mvc.ExceptionHandling.Models.InvalidUserNameException, Artech.Mvc.ExceptionHandling"  
  6. postHandlingAction="ThrowNewException"> 
  7. ...  
  8. <addnameaddname="UserNamePasswordNotMatchException"type="Artech.Mvc.ExceptionHandling.Models.UserNamePasswordNotMatchException, Artech.Mvc.ExceptionHandling"9:postHandlingAction="ThrowNewException"> 
  9. ...  
  10. </add> 
  11. </exceptionTypes> 
  12. </add> 
  13. </exceptionPolicies> 
  14. </exceptionHandling> 

如上面的配置所示,我们为InvalidUserNameException和UserNamePasswordNotMatchException这两种异常类型定义了不同的Error View,分别是“InvalideUserNameError”和“UserNamePasswordNotMatchError”,详细定义如下所示:

  1. @{  
  2. Layout = null;  
  3. }  
  4. <!DOCTYPEhtml> 
  5. <html> 
  6. <head> 
  7. <title>Error</title> 
  8. </head> 
  9. <body> 
  10. <pstylepstyle="color:Red; font-weight:bold">Sorry,the user name you specify does not exist!</p> 
  11. </body> 
  12. </html> 
  13.  @{  
  14. Layout = null;  
  15. }  
  16. <!DOCTYPEhtml> 
  17. <html> 
  18. <head> 
  19. <title>Error</title> 
  20. </head> 
  21. <body> 
  22. <pstylepstyle="color:Red; font-weight:bold">Sorry, The password does not match the given user name!</p> 
  23. </body> 
  24. </html> 

现在我们按照上面的方式运行我们的程序,在分别输

网学推荐

免费论文

原创论文

设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved 湘ICP备09003080号