自定义例外并减少重复的代码

时间:2011-11-28 01:37:29

标签: c# exception exception-handling custom-exceptions

我决定在我的代码中使用Exceptions来传递错误处理。每当我想创建一个新的异常时,我发现自己会复制代码。这些类没什么特别的,只包含一条消息。但是在处理它时我已经开始依赖类型安全了。有没有办法提供新的异常类类型而无需重新实现构造函数?

[Serializable]
class MyNewException : MyBaseException
{
    public MyNewException (String tMsg)
        : base(tMsg)
    {
    }

    public MyNewException (String tMsg, Exception tInnerEx)
        : base(tMsg, tInnerEx)
    {
    }
}

对于我想要定义的每种不同类型的异常,上面的代码会重复多次。

1 个答案:

答案 0 :(得分:1)

不幸的是,不,必须提供构造函数,因为它们不是继承的。

此外,除非您捕获这些特定异常并在发生时执行显式处理,否则我建议您使用包含可能需要的其他信息的一般异常。但是,这可能不适用于您的情况。