我希望控制服务创建,这样我就可以进行必要的调整,使服务的方法调用可以被拦截.通过将LinFu邮寄到服务的DLL,可以实现拦截
我们可以在ServiceStack上做DI,但不会干掉代码;如果通过DI进行日志服务调用,则每个服务都需要为ILogger公开DI接口. AOP可以省去放置DI注入的接口,AOP是最好的代码DRYer
ServiceStack上是否有自定义服务工厂?所以DRYing代码是可能的
这让我想在我的服务上实现AOP:http://www.codeproject.com/Articles/23333/Introducing-LinFu-Part-VI-LinFu-AOP-Pervasive-Meth
最佳答案 为您的DI容器实现IContainerAdapter(以及可选的IRelease),然后在AppHost.Configure中连接它.例如.对于温莎你做的:
public override void Configure(Funq.Container container)
{
...
var compositionRoot = new WindsorCompositionRoot(WindsorContainer);
container.Adapter = compositionRoot;
container.CheckAdapterFirst = true;
...
}