不鼓励只捕获系统异常。相反,只有;“已知”;应该抓住例外情况
现在,这有时会导致不必要的重复代码,例如:
试试看
{
WebId=新Guid(查询字符串[“web”]);
}
捕获(格式化异常)
{
WebId=Guid.Empty;
}
捕获(溢出例外)
{
WebId=Guid.Empty;
}
我想知道:是否有一种方法可以捕获这两个异常,并且只调用WebId=Guid.Empty
调用一次
给定的示例相当简单,因为它只是一个GUID
。但想象一下,在代码中,您多次修改一个对象,如果其中一个操作意外失败,您希望;重置";对象
。但是,如果出现意外的异常,我仍然希望抛出更高的值
捕捉系统异常
并打开类型
捕获(异常示例)
{
if(ex为FormatException | | ex为OverflowException)
{
WebId=Guid.Empty;
回来
}
投
}