0

我有三层:

  1. ServiceHandlers(与 ax2012 对话并将数据映射到实体)
  2. 服务(它从 serviceHandlers 中调用函数,例如 getOrder 并返回它)
  3. Winform(或者可以是任何人设计 UI,使用服务逻辑来做到这一点)。

我的问题是 ServiceHandlers 中的异常处理。我实现了我自己的异常EntityNotFound,当调用 getEntity 函数并且没有找到任何东西时我会抛出该异常。当我抓住它时,我所做的就是再次扔它并在服务中抓住它。

在 catch 块内,我只使用语句 throw; ..虽然我会把它扔回去,然后我会在winform层的catch语句中捕捉到。但是发生的事情是应用程序在服务层停止并说“EntityNotFoundException”未处理,这是好的,但我希望这发生在 winform 层。

希望这是可以理解的,所以..有什么建议吗?

4

1 回答 1

1

首先,除非您添加一些值(例如日志记录)或添加服装消息,否则不要捕获并重新抛出异常。您可以尝试...在 GUI 层捕获异常以适当地处理它。

其次,示例代码将帮助您调试问题。

于 2012-06-07T17:12:18.167 回答