【发布时间】:2019-02-24 01:50:24
【问题描述】:
由于似乎更好的装饰器支持,我正在考虑从 Autofac 切换到 Simple Injector。但是我非常喜欢您使用 Autofac 注册和托管 svc-less WCF 服务的方式,但我找不到使用 Simpleinjector 的方法。
例如,使用 Autofac,它的工作方式如下(在 Application_Start 中):
在容器构建期间:
builder.RegisterType<SomeService>().As<ISomeService>();
容器构建完成后:
RouteTable.Routes.Add(
new ServiceRoute("", new AutofacServiceHostFactory(), typeof(ISomeService)))
请注意 ServiceRoute 中的空字符串 routePrefix,以便在 url 中没有实际服务名称的情况下实现休息式服务端点。
Simple Injector 中是否有与此等价的功能?
【问题讨论】:
-
你尝试了什么?
-
你试过打电话
RouteTable.Routes.Add(new ServiceRoute("", new SimpleInjectorServiceHostFactory(), typeof(ISomeService)))吗?那样有用吗?如果没有,会发生什么?请描述为什么这不起作用? -
@Steven 谢谢,这看起来很有希望。不知道 SimpleInjector 库中的那个类。一有机会就试试看。
-
好吧,如果您阅读integration guide :) 就很难错过。
-
谢谢@Steven。当然,它就像一个魅力。我会将您的评论标记为答案,但我是 Stack Overflow 的新手,我不知道该怎么做...
标签: c# wcf autofac simple-injector