1

我在使用 Unity 解决 WCF 时遇到问题。

注册WCF频道如下

 string serviceUrl = "http://localhost:8000/AdvancedPersonSelectService.svc";
    IocContainer.Instance.RegisterType<IPersonAdvancedPersonSelectService, AdvancedPersonSelectService>(                      
                   new InjectionFactory(
                   c => WcfClientProxyBuilder.CreateProxy<IPersonAdvancedPersonSelectService>(serviceUrl)));

IocContainer.Instance 是 Unity 容器
wcfClientProxyBuilder 返回一个 WCF 通道。

解决这个问题

      var personAdvancedPersonSelectService = IocContainer.Instance.Resolve<IPersonAdvancedPersonSelectService>("AdvancedPersonSelectService");
        var getUserNameresponse = personAdvancedPersonSelectService.GetUserName(request);

此时我收到错误

依赖项解析失败,类型 =“Healthphone.ConcordiaCCMS.Common.ServiceContracts.IPersonAdvancedPersonSelectService”,名称 =“AdvancedPersonSelectService”。异常发生时:解决时。

例外是: InvalidOperationException - IPersonAdvancedPersonSelectService 类型没有可访问的构造函数。

在异常发生时,容器是:

解决 Healthphone.ConcordiaCCMS.Common.ServiceContracts.IPersonAdvancedPersonSelectService,AdvancedPersonSelectService

我已经尝试了本网站中提到的所有选项来解决问题,但对我来说没有任何效果。

有人可以帮忙吗?

提前致谢。

4

0 回答 0