首页 > Windows开发 > 详细

C# 6.0:Exception Filter——带条件的异常处理

时间:2014-12-19 11:54:49      阅读:636      评论:0      收藏:0      [点我收藏+]

C#6.0 对异常处理有两处改进,一个是在上一篇文章中我们讨论了的在catch和finally中使用await,另一个是exception filter。在catch和finally中使用await是一个开发者欢迎的功能,无疑exception filter是另一个给开发者处理异常带来极大便利的新功能。那么神秘是exception filter那?它是一个通过返回true或false到catch块中的条件语句帮助我们过滤筛选exception的功能。

下面的代码块是一个exception filter的简单说示例。

bubuko.com,布布扣
try
{
    // Some exception
}
catch (Exception e) if (e.InnerException != null)
{
    // handle the exception
}
finally
{

}
View Code

如上面的代码所示,一个if语句添加到了exception的后面。它表示catch块中的代码只在这个if条件为true的时候执行。我们使用不同的条件来定义多个catch块。随着一级级执行,它们也会一个个的被调用。

bubuko.com,布布扣
try
{
    // Some exception
}
catch (InvalidOperationException ioe) if (Condition1)
{
    // handle the exception
}
catch (FieldAccessException fae) if (Condition2)
{
    // handle the exception
}
catch(Exception exp)
{

}
finally
{
}
View Code

 

C# 6.0:Exception Filter——带条件的异常处理

原文:http://www.cnblogs.com/yuwen/p/4173307.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!