首页 > 代码库 > C# 6.0:Exception Filter——带条件的异常处理
C# 6.0:Exception Filter——带条件的异常处理
C#6.0 对异常处理有两处改进,一个是在上一篇文章中我们讨论了的在catch和finally中使用await,另一个是exception filter。在catch和finally中使用await是一个开发者欢迎的功能,无疑exception filter是另一个给开发者处理异常带来极大便利的新功能。那么神秘是exception filter那?它是一个通过返回true或false到catch块中的条件语句帮助我们过滤筛选exception的功能。
下面的代码块是一个exception filter的简单说示例。
try{ // Some exception}catch (Exception e) if (e.InnerException != null){ // handle the exception}finally{}
如上面的代码所示,一个if语句添加到了exception的后面。它表示catch块中的代码只在这个if条件为true的时候执行。我们使用不同的条件来定义多个catch块。随着一级级执行,它们也会一个个的被调用。
try{ // Some exception}catch (InvalidOperationException ioe) if (Condition1){ // handle the exception}catch (FieldAccessException fae) if (Condition2){ // handle the exception}catch(Exception exp){}finally{}
C# 6.0:Exception Filter——带条件的异常处理
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。