如何处理存储库类中的异常?

时间:2010-08-13 14:36:17

标签: c# exception-handling error-handling

如果存储库类中发生错误/异常,那么该异常是否应该

一个。抓住了记录或 湾抛给调用者(服务 - 那里会发生什么?)

3 个答案:

答案 0 :(得分:2)

总是有例外的答案是“在可以处理它们的地方处理它们”

如果在异常情况下,存储库仍然可以形成可接受的返回值,那么存储库应该处理它。

如果存储库不能,并且只有被调用者拥有处理问题所需的所有信息,那么异常应该冒出来。

答案 1 :(得分:1)

如果可以,请在存储库中正常处理异常(catch,log,recover)并将失败条件传递回调用方,以允许调用方从他们的方面处理失败。如果你不能那么它可能是致命的例外和时间,如果可以并且终止。

答案 2 :(得分:0)

一般来说,我更喜欢捕捉并记录出现的异常。所以我会选择。通常在发生异常时,您可以获得有关错误的最多信息,并且可以记录描述性消息,这样可以更轻松地浏览日志。如果你把链上的错误移交给它,就会发现错误发生的地方要困难得多。并不是说检查内部异常要困难得多,但取决于你传递的距离,当它被记录时,你就不会接近你的原始错误。