C# 如何在Castle Windsor中注册所有WCF服务实现
首先,对于可能重复的问题,我很抱歉,但我是新来的,同时对温莎城堡项目感到兴奋。我已经重构了我的Web API服务,以利用DI和单元测试的优势。 项目结构:API(Web API)WcfServiceWrapper(库项目)>(C# 如何在Castle Windsor中注册所有WCF服务实现,c#,wcf,dependency-injection,asp.net-web-api2,castle-windsor,C#,Wcf,Dependency Injection,Asp.net Web Api2,Castle Windsor,首先,对于可能重复的问题,我很抱歉,但我是新来的,同时对温莎城堡项目感到兴奋。我已经重构了我的Web API服务,以利用DI和单元测试的优势。 项目结构:API(Web API)WcfServiceWrapper(库项目)>(IAuthorizationService、IBussineProcessService、IClientService…(服务引用))。所有服务引用的配置都在配置文件中 在WcfServiceWrapper中,我与ex一起工作: using(IAuthorizationSe
IAuthorizationService、IBussineProcessService、IClientService
…(服务引用))。所有服务引用的配置都在配置文件中
在WcfServiceWrapper中,我与ex一起工作:
using(IAuthorizationService serviceClient = new AuthorizationServiceClient()){
}
现在使用Castle,我希望所有引用的服务(IAAuthorizationService、IBussinesProcessService、IClientService…
)使用它们的实现(AuthorizationServiceClient、Business Process ServiceClient、ClientServiceClient…
)
城堡配置在API项目中。当我这样做时:
container.Register(Classes.FromAssemblyNamed("WcfServiceWrapper").Pick().WithServiceAllInterfaces());
在运行时,它告诉我,ComponentActivator:无法实例化AuthorizationServiceClient
我认为它无法从配置文件中读取绑定配置,或者我不知道
您能告诉我如何注册这些组件吗?经过更详细的搜索,我发现这是绑定的常见问题。我必须将所有绑定配置从WcfServiceWrappers
app.config
移动到APIweb.config
,这样现在所有服务客户端都可以看到构造函数中需要的绑定配置 您是否有更详细的错误消息?您注册的实现中是否有任何构造函数中没有实现的接口?