
代理表示的具体类型实现了IServiceHost接口.因此,代理也应该,以允许使用该接口的代理调用工作.
我尝试通过以下方式向autofac注册代理:
voID Initialize(IServiceHost host){ Host = host; var builder = new ContainerBuilder(); builder.RegisterInstance(host) .As<IServiceHost>() .SingleInstance(); Scope = builder.Build();} 但是,在builder.Build()调用中,我得到:
ArgumentException
The type ‘System.MarshalByRefObject’ is not assignable to service ‘Treadmarks.Core.ServiceBase.IServiceHost’.
但是,host绝对是一个IServiceHost,因为它不是null,而是来自一个强类型的方法参数.
任何人都可以解释我如何正确注册代理?
解决方法 您应该能够使用带有.Register()方法的lambda而不是.RegisterInstance()来解决此问题. 总结以上是内存溢出为你收集整理的c# – Autofac和跨AppDomain代理全部内容,希望文章能够帮你解决c# – Autofac和跨AppDomain代理所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)