1

我们目前使用 Castle Windsor 来管理 Web 应用程序中的依赖注入。DI 注册代码出现在应用程序本身中,因此每个应用程序在其 Global.asaxApplication_Start()方法中具有大致相同的代码。我们认为这是适当的,因为每个应用程序可能需要对某些相关接口进行不同的实现。

我现在正在研究 AOP,特别是围绕授权。我们希望为类库中特定类的方法添加属性,这些属性定义是否允许用户执行该方法。AOP 听起来很好地呼吁如何实现这一点。

唯一让我不舒服的是每个 Web 应用程序都必须为自己设置拦截器。如果其中一个 Web 应用程序错误地配置了 AOP 内容,我们最终可能会遇到授权代码没有执行的不可接受的情况。

类库是否可以通过某种方式配置自己的 AOP,或者配置 AOP 的责任可以从 Web 应用程序中移除?

4

1 回答 1

1

将此 AOP 初始化代码放入安装程序工具中,将其放入所有 Web 应用程序共享的库中,然后让 Web 应用程序调用此安装程序,或者让 Web 应用程序扫描所有安装程序container.Install(FromAssembly.InThisApplication());

于 2012-05-03T15:08:34.980 回答