2011-07-25 68 views
1

是否有任何使用windosr的contrib/sample作爲IoC的WCF Web APIWCF Web API與windsor

我還在尋找Windsor攔截器和WCF Web API攔截器(Microsoft.ServiceModel.Http.Interception.RequestInterceptor)之間的集成。

感謝您的任何建議

+0

不是我所知道的 –

+1

我能插上溫莎但攔截器添加到服務1不叫 無功配置= HttpHostConfiguration.Create().SetResourceFactory(新WindsorResourceFactory(container.Kernel)) ; RouteTable.Routes.MapServiceRoute (「Service1」,configuration); – Crixo

+1

請參閱以下博客文章。 http://blog.sharshag.com/2011/10/integrating-castle-windsor-in-wcf-web.html – 2011-10-30 17:22:21

回答

1

RequestInterceptor是部分REST入門工具包並不會與網頁API的工作。您可以使用我們的操作處理程序(HttpOperationHandler)攔截調用。如果您使用的是Windsor,那麼您將使用Castle Dynamic Proxy在Windsor解析實例時攔截。

3

我可能是錯的,但這在新版本的WebAPI(.6)中並不適用。我反而做了這個連接溫莎(警告這可能不是最好的方法,但是,它的工作原理)。注_container是我的Windsor容器。

var config = new WebApiConfiguration() 
         { 
          CreateInstance = 
           (type, instanceContext, httpRequestMessage) => 
            { 
             return _container.Resolve(type); 
            }, 
          EnableTestClient = true, 
          ReleaseInstance = 
            (instanceContext, obj) => _container.Release(obj) 
         }; 
+0

我使用與Windsor/web api6相同的解決方案 關於攔截,我正在使用web api攔截策略(MessageHandlers),當我使用Castle攔截器進行ServiceContract/Api攔截(aspect)時, – Crixo