Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在Castle Windsor中注册所有WCF服务实现_C#_Wcf_Dependency Injection_Asp.net Web Api2_Castle Windsor - Fatal编程技术网

C# 如何在Castle Windsor中注册所有WCF服务实现

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

首先,对于可能重复的问题,我很抱歉,但我是新来的,同时对温莎城堡项目感到兴奋。我已经重构了我的Web API服务,以利用DI和单元测试的优势。 项目结构:API(Web API)WcfServiceWrapper(库项目)>(
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
移动到API
web.config
,这样现在所有服务客户端都可以看到构造函数中需要的绑定配置

您是否有更详细的错误消息?您注册的实现中是否有任何构造函数中没有实现的接口?