我在使用 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
我已经尝试了本网站中提到的所有选项来解决问题,但对我来说没有任何效果。
有人可以帮忙吗?
提前致谢。