Dependency injection 使用DI时如何在WCF上设置配置

Dependency injection 使用DI时如何在WCF上设置配置,dependency-injection,wcf,wcf-binding,Dependency Injection,Wcf,Wcf Binding,我正在使用它在WCF中实现DI。现在我需要配置端点和绑定 我应该如何以及在何处执行此操作?对于REST 4模板上的温莎,这是我注册路线的方式 // SOAP Endpoint RouteTable.Routes.Add(new ServiceRoute("myendpointname/soap", new WindsorServiceHostFactory<Castle.Facilities.WcfIntegration.DefaultServiceModel>(), typ

我正在使用它在WCF中实现DI。现在我需要配置端点和绑定


我应该如何以及在何处执行此操作?

对于REST 4模板上的温莎,这是我注册路线的方式

// SOAP Endpoint
RouteTable.Routes.Add(new ServiceRoute("myendpointname/soap",
    new WindsorServiceHostFactory<Castle.Facilities.WcfIntegration.DefaultServiceModel>(), typeof(IMyEndPointService)));

// REST Endpoint
RouteTable.Routes.Add(new ServiceRoute("myendpointname",
    new WindsorServiceHostFactory<RestServiceModel>(), typeof(IMyEndPointService)));
//SOAP端点
RouteTable.Routes.Add(新的ServiceRoute(“myendpointname/soap”),
新的WindsorServiceHostFactory(),类型为(IMyEndPointService));
//静止端点
RouteTable.Routes.Add(新服务路由(“myendpointname”),
新的WindsorServiceHostFactory(),类型为(IMyEndPointService));
flq的评论提供了答案:即使使用IInstanceProvider,您仍然可以使用正常的WCF配置设置


因为这是配置WCF的惯用方法,所以我认为没有理由以任何其他方式进行配置。它提供了灵活性,提供了工具支持,并且您将使用文档化的API。

这取决于您使用的DI容器。。。有些很简单,例如Windsor有Wcf设施。您认为使用实例提供程序与提供端点设置的常规方式有何冲突?我查看了您提供的SO链接,我不同意您选择的答案。。。当你本可以使用Wcf设施时,为什么要用石头凿出你自己的轮子???下一个答案是使用Wcf设施。。。我已经用过很多次了,效果很好。@CrazyDart-我正在用Unity寻找解决方案,因为我想坚持使用Microsoft技术。温莎/城堡似乎不是MSFT技术。但团结是,明白了。它确实有助于了解您正在使用的DI。@flq和@Mark Seemann所说的是,您使用与不使用DI设置相同的方式进行配置。。。我不确定我是否完全同意,但大体上是正确的。这将取决于您使用的WCF模板。你找过这方面的博客了吗?我发现了一些使用谷歌。。。我知道这不是微软的产品,但它似乎是可靠的我刚开始使用WCF工厂,这让我开始学习一个确切的web.config示例。只要我对WCF有足够的了解,或者有勇气/耐心尝试错误方法,我就会制作一个样本。