.NET 4.0中缺少ServiceHostFactory?

chu*_*nce 23 .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);
        }
    }
Run Code Online (Sandbox Code Playgroud)

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

根据这个:

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

它应该在4.0中得到支持.我在这里错过了什么?

Bra*_*olz 35

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

但是,ServiceHostFactory位于System.ServiceModel.Activation.dll本身.因此,您需要添加对该程序集的引用.请记住,默认情况下,VS2010似乎想要使用.NET 4 Client Profile,因此在添加对System.ServiceModel.Activation的引用之前,您需要将其更改为常规.NET 4配置文件.