【问题标题】:Should we use overrides or a static constructor when overriding AutofacServiceHostFactory在覆盖 AutofacServiceHostFactory 时我们应该使用覆盖还是静态构造函数
【发布时间】:2011-08-03 16:40:04
【问题描述】:

我们在 IIS 7.5 中运行带有 net.tcp 绑定的 WCF 服务,因此我们使用了非 HTTP 激活和 WAS 托管。我们为每个服务创建了一个自定义服务主机工厂,它派生自 AutofacServiceHostFactory

我最近对服务进行了一些维护(切换到使用 NuGet 包升级到最新版本等)。我碰巧注意到wiki article for WCF Integration 建议使用覆盖CreateServiceHost(string constructorString, Uri[] baseAddresses) 并在调用基本实现之前在那里构建容器。

我们的 ServiceHostFactories 一直在使用静态构造函数来做同样的事情。我想知道我是否应该切换。静态构造函数是一个坏主意有什么原因吗?如果使用覆盖,我们需要覆盖 CreateServiceHost() 的任何其他重载。

感谢您的帮助!

【问题讨论】:

  • 什么都没有?我希望 Autofac 团队发表评论。

标签: c# wcf autofac net.tcp


【解决方案1】:

似乎建议再次更改为使用AppStart.AppInitialize() 来注册依赖项并在与协议无关的派系中构建容器。这就是我们现在正在做的事情。

Autofac Wiki

Referenced article

【讨论】:

    猜你喜欢
    • 2011-07-20
    • 2014-06-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-11
    • 1970-01-01
    • 2018-03-15
    相关资源
    最近更新 更多