3

我正在努力使用带有 IInterceptor 的 WcfIntegration 连接服务接口。

autofac 文档中每个都有示例,但没有将两者结合起来。

这是WcfIntegration的文档并在此处查找DynamicProxy2 文档。

有没有人使用 Autofac 成功地将拦截器与 WcfIntegration 连接起来?

我希望工作的示例代码:

            builder.Register(c => new CacheInterceptor())
            .Named<IInterceptor>("cache-calls");

        builder
            .RegisterType<ChannelFactory<IEnquiryService>>()
            .AsSelf()
            .WithParameter(new NamedParameter("endpointConfigurationName", "EnquiryService"))
            .SingleInstance();

        builder
            .Register(c => c.Resolve<ChannelFactory<IEnquiryService>>().CreateChannel())
            .As<IEnquiryService>()
            .EnableInterfaceInterceptors()
            .InterceptedBy("cache-calls");

编辑:

似乎在autofac 网站上记录了一个错误。有什么解决方法吗?

4

1 回答 1

1

由于这已作为 autofac bugtracker 上的错误提出,如果没有人可以看到解决方法,我会将其标记为答案。他们上传了一个控制台应用程序,重现了确切的场景。

http://code.google.com/p/autofac/issues/detail?id=361&q=dynamicproxy2

编辑:这已在最新版本中修复

于 2012-05-09T23:23:05.367 回答