.net - .NET 4.0 中缺少 ServiceHostFactory?

标签 .net .net-4.0 c#-4.0

这让我发疯了,也许我错过了一些东西,但我正在尝试将 .NET 3.5 应用程序升级到 .NET 4.0,我遇到的唯一问题是这个类:

3.5 代码:

   public class ServiceHostFactory : System.ServiceModel.Activation.ServiceHostFactory
    {
        protected override System.ServiceModel.ServiceHost CreateServiceHost(Type serviceType, Uri[] baseAddresses) {
            return new ServiceHost(serviceType, baseAddresses);
        }
    }

当我升级到 4.0 时,似乎“ServiceHostFactory”不存在(它是红色的)。进入对象浏览器,在 System.ServiceModel.Activation 下,它确实没有显示 ServiceHostFactory。

根据这个:

http://msdn.microsoft.com/en-us/library/system.servicemodel.activation.servicehostfactory.aspx

它应该在 4.0 中得到支持。我在这里缺少什么?

最佳答案

System.ServiceModel.dll 在 System.ServiceModel.Activation 命名空间中有一些项目。

但是,ServiceHostFactory 位于 System.ServiceModel.Activation.dll 本身中。因此,您需要添加对该程序集的引用。请记住,默认情况下,VS2010 似乎想要使用 .NET 4 客户端配置文件,因此您需要先将其更改为常规 .NET 4 配置文件,然后才能添加对 System.ServiceModel.Activation 的引用。

关于.net - .NET 4.0 中缺少 ServiceHostFactory?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3609899/

相关文章:

c# - 代码契约(Contract) : Do we have to specify Contract. Requires(...) 语句在委托(delegate)方法中冗余?

wcf - 在序列化时忽略 DataMember

c# - 跨请求保留新声明

c# - .NET 的事件机制

c# - 有没有办法确定我在 foreach 循环中的哪一行?

.net-4.0 - Microsoft 是否提供 .NET 4.0 的离线 API 文档?

.net - NUnit - 测试失败后的清理

.net - Log4Net 和 .NET 4.0 RC

c# - VS2010 + NUnit 加载程序集失败?

.net - System.Net.WebRequest 和 TLS 1.2 使用 haproxy 创建一个 'Handshake Failure'