0

背景

我有一个提供某些 CRM 服务的组件 - specificCRM。我有一个实现我的 IGeneralCRM 接口的特定CRMAdapter。

另一个组件 generalCRM 通过 IGeneralCRM 公开 CRM 功能,并使用 Spring.Net 注入 specificCRMAdapter 以提供此类功能。

问题

如果特定 CRM 组件失败,我希望能够捕获异常。我是否应该实施 Spring.Net AOP 抛出建议来完成此任务,或者我是否过度设计问题,因为我需要做的只是捕获异常。

一种或另一种方式有什么好处吗?

4

2 回答 2

0

如果您已经在使用 Spring AOP.Net,并且您不需要扩展所有性能,我说使用建议 - 稍后您可以将建议用于其他内容,使用新建议来捕获更多异常并很好地集成所有内容.

否则,只需捕获异常。无论如何,您都应该有异常代码,无论是在建议还是在 try/catch 块中。

于 2009-01-30T10:44:48.860 回答
0

这实际上取决于您打算对异常做什么。AOP 很棒,但会导致复杂的配置,而且通常是矫枉过正。

AOP 的亮点在于它能够为处理多个对象上的相同业​​务横切提供逻辑。在你的情况下,你似乎暗示你正在处理一个单一的实现,所以我想说现在只是试着抓住它。

如果您认为可以在多个方法和对象中重用相同的逻辑,那么 AOP 是一个更好的解决方案。

于 2009-02-11T01:26:53.180 回答