例外 - 在方法提升多于一个时区分异常
-
28-10-2019 - |
题
我得到了引发相同类型异常的此类,如何捕获此异常并显示适当的错误消息。这就是我现在要做的。 通用标签
然后我做下面的事情, 通用标签
解决方案
您的示例并未真正证明自定义异常的合理性。我说只是显示原始消息。
但是,如果您真的想走自定义例外的道路,那么另一种选择是创建一个单独的自定义例外,该例外接受带有所有不同选项的enum
,例如:
通用标签
其他提示
您可能会考虑抛出不同的异常类型。如果您希望使用库异常类型,如果旧密码为空或空,则将ArgumentNullException
适合。或者,您可以考虑使用更具体的错误定义自己的异常类型(可能与WCF中的故障配置类似),或者在自定义异常中包含资源标识符(以确保I18N兼容):
public class ResourceableException : Exception
{
public string ResourceKey { get;set; }
}
.
然后使用如此:
try { ... }
catch (ResourceableException e)
{
messagebox.Show(ResourceManager.GetResource(e.ResourceKey));
}
. 您可以像这样创建自定义例外: 通用标签
然后可以像这样使用它们: 通用标签
然后您可以在try catch语句中处理它们,如下所示: 通用标签
因此,您可以以不同的方式处理不同类型的异常。希望这就是您想要的。
不隶属于 StackOverflow