于 C# 6.0 包裹在异常处理的新功能,有两个方面的改进:

  • 异步处理(async and await)能力 catch block 总结使用。于 C# 5.0 释放 async and await,在那个时候它不能用 catch block。现在能够做到这一点。
  • 支持异常过滤 exception filtering

异步处理的样例:

try
{WebRequest webRequest = WebRequest.Create("http://www.csdn.net");WebResponse response = await webRequest.GetResponseAsync();// ...
}
catch (WebException exception)
{await WriteErrorToLog(exception);
}

异常过滤,这算是让 C# 跟上 Visual Basic .NET 和 F# 在这方面的支持。

例如以下样例:

try
{DoSomeHttpRequest();
}
catch (System.Web.HttpException e) if (e.GetHttpCode() == 400)
{WriteLine("Not Found");
}
catch (System.Web.HttpException e) if (e.GetHttpCode() == 500)
{WriteLine("Internal Server Error");
}
catch
{WriteLine("Generic Error");
}

比較一下之前的写法:

try
{DoSomeHttpRequest();
}
catch (System.Web.HttpException e)
{switch (e.GetHttpCode()){case 400:WriteLine("Bad Request");case 500:WriteLine("Internal Server Error");default:WriteLine("Generic Error");}
}

版权声明:本文博主原创文章,博客,未经同意不得转载。

C# 6.0 (C# vNext) 的新功能:Exception-Handling Improvements相关推荐

  1. C# 6.0 (C# vNext) 的新功能:Expression Bodied Functions and Properties

    Expression Bodied Function 它可以用在: methods user-defined operators type conversions read-only properti ...

  2. 两千字揭密 MySQL 8.0.19 三大索引新功能:隐藏索引,降序索引,函数索引

    导读:本文详细介绍 MySQL 8.0.19 三大索引新功能,隐藏索引,降序索引,函数索引,结合其他同仁的技术应用案例,进一步进行验证改编,最后总结心得,希望对大家有帮助. MySQL 8.0 版本带 ...

  3. groupby索引有效吗_两千字揭密 MySQL 8.0.19 三大索引新功能

    原文链接:https://www.modb.pro/db/22619 导读:本文详细介绍 MySQL 8.0.19 三大索引新功能,隐藏索引,降序索引,函数索引,结合其他同仁的技术应用案例,进一步进行 ...

  4. 微信小程序0.11.122100版本新功能解析

    微信小程序0.11.122100版本新功能解析 我的知乎专栏-小楼昨夜又秋风 https://zhuanlan.zhihu.com/oldtimes 新版本就不再吐槽了,整的自己跟个愤青似的.人老了, ...

  5. android 打开微信好友动态,朋友圈可以查看“访客记录”?微信8.0.1不简单,新功能大解析...

    前段时间,iOS系统提前更新了8.0版本,这让安卓用户非常不满.满世界的苹果用户都在体验微信的新功能,只有安卓用户一脸懵,好在安卓系统的用户终于等到了.微信每一次的更新都是影响重大的,因为在微信的背后 ...

  6. android-9.0主要有哪些新功能(Pie)

    Android 9 功能和 API: Android 9.0 利用人工智能技术,让手机变得更智能.更快,并且还可以随着用户的使用习惯进行调整. 利用 Wi-Fi RTT 进行室内定位 Android ...

  7. 八猴模型html文件,4年来首次更新!八猴4.0都有哪些新功能?

    好了,应一位老粉丝的要求,我们今天来说说8猴新版4.0的功能. 前天吧,具体哪天忘了,国内和国外有时差,但是不管了,Marmoset发布了Toolbag4.0,也就是我们国内小伙伴俗称的八猴,这也是近 ...

  8. android7.12新功能,安卓7.0值得注意的新功能 新增分屏和更合理的通知栏

    安卓7.0系统发布在即,虽说原生安卓系统的发布到最终变成针对各机型优化后的ROM发送到用户手上还需要一段时间,不过这些新功能都还是值得关注一下的.小米的MIUI9.华为的EMUI等等大手机厂商也都在向 ...

  9. Corel 会声会影 2023 旗舰版雨糖科技v26.0.0.163特别版新功能介绍

    Corel 会声会影 2023 旗舰版雨糖科技v26.0.0.163特别版是一款使用起来十分件便捷的影视后期视频编辑处理软件,会声会影正式版操作简单,还具备了独特创意.灵活有趣等特点,并且软件还具备了 ...

最新文章

  1. Spring入门详细教程(一)
  2. 迭代法解方程:牛顿迭代法、Jacobi迭代法
  3. zigbee传输速率_wifi智能开关和zigbee智能开关有哪些区别
  4. HDU-6341 Problem J. Let Sudoku Rotate(dfs 剪枝)
  5. ubuntu14.04 LTS Visual Studio Code 编辑器推荐
  6. opennms安装心得
  7. MySQL学习(一、概述和表的基本操作)
  8. linux 代码量统计命令,Linux下源代码行数统计工具(sloccount, cloc等)
  9. 1.命令行窗口(小黑屏)、CMD窗口、终端、shell、DOS窗口
  10. IP地址归属地和手机号码归属地批量查询(单次支持500个以内,支持结果导出xls)
  11. 如何识别pdf文档中的文字(图像识别)python
  12. pyecharts画世界地图时显示为中文之世界各国中英文国名对照
  13. 从这条博客开始转变!
  14. Merge用法:Oracle 10g中对Merge语句的增强
  15. 我在公司彻夜撸码,老板天天开X6夜店蹦迪,到头来工资还拖欠
  16. B站Golang技术栈分析
  17. patch的用法【转】
  18. myeclipse新建项目部署到tomcat中,点击finish键没反应
  19. jquery跳转、刷新页面大全
  20. 使用 FFmpeg(bilibili视频m4s合成mp4)

热门文章

  1. C#中get和SET
  2. PHP三维数组变一维
  3. getResourceAsStream 返回 null 解决经验浅谈
  4. 总结一下切换git地址 重合代码的过程
  5. 如何继承SWT组件?
  6. 大厂面试算法系列-如何实现链表的逆序(一)-原地逆序
  7. SpringBoot 自动配置原理
  8. 良好的Makefile实践
  9. Go 模块--开始使用Go Modules
  10. 一文说清Elasticsearch的核心概念