【问题标题】:Custom ServiceHostFactory never called on Windows Server 2012 R2 and IIS 8.5自定义 ServiceHostFactory 从未在 Windows Server 2012 R2 和 IIS 8.5 上调用
【发布时间】:2015-06-05 06:43:23
【问题描述】:

我有一个带有自定义 ServiceHostFactory 的 WCF 服务解决方案 (NET 4),可以在我的开发人员机器(Windows 8.1 和 IIS 8.5)上正常运行,但由于某种原因,我无法让它在 Windows Server 2012 和 IIS 8.5 上运行。 WCF 服务本身在 Server 2012 上工作,但从未调用过 ServiceHostFactory。是否有我应该通过在 Server 2012 中添加角色或功能安装的特定模块才能使其正常工作?

public class InternalAHostFactory : ServiceHostFactory
{
    protected override ServiceHost CreateServiceHost(Type serviceType, Uri[] baseAddresses)
    {
        ServiceHost host = base.CreateServiceHost(serviceType, baseAddresses);
        host.Opening += new EventHandler(host_Opening);
        return host;
    }

    void host_Opening(object sender, EventArgs e)
    {
        // This is never called on Windows Server 2012 R2 and IIS 8.5 but works on Windows 8.1 and IIS 8.5
    }

}

【问题讨论】:

  • 你能展示一下让服务器使用你的工厂的配置行吗?
  • 我没有在 web.config 中指定它,但它仍然可以在我的开发人员机器上工作,甚至在另一台服务器 2012 上,但仅在这个特定的服务器 2012 上它不起作用
  • 我在 .svc 文件中指定了 Factory="Internal.InternalAHostFactory"

标签: wcf iis windows-server-2012-r2 iis-8.5


【解决方案1】:

通过服务器管理器添加完整的“WCF 服务”功能集在我的情况下解决了这个问题。

【讨论】:

    猜你喜欢
    • 2015-06-29
    • 1970-01-01
    • 1970-01-01
    • 2017-06-23
    • 2016-05-11
    • 2014-07-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多