ServiceHostFactory Class
Factory that provides instances of ServiceHost in managed hosting environments where the host instance is created dynamically in response to incoming messages.
System.ServiceModel.Activation.ServiceHostFactoryBase
System.ServiceModel.Activation.ServiceHostFactory
System.Data.Services.DataServiceHostFactory
System.ServiceModel.Activation.WebScriptServiceHostFactory
System.ServiceModel.Activation.WebServiceHostFactory
System.Web.ApplicationServices.ApplicationServicesHostFactory
Namespace: System.ServiceModel.Activation
Assembly: System.ServiceModel.Activation (in System.ServiceModel.Activation.dll)
The ServiceHostFactory type exposes the following members.
| Name | Description | |
|---|---|---|
![]() | CreateServiceHost(String, Uri[]) | Creates a ServiceHost with specific base addresses and initializes it with specified data. (Overrides ServiceHostFactoryBase.CreateServiceHost(String, Uri[]).) |
![]() | CreateServiceHost(Type, Uri[]) | Creates a ServiceHost for a specified type of service with a specific base address. |
![]() | Equals(Object) | Determines whether the specified object is equal to the current object. (Inherited from Object.) |
![]() | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) |
![]() | GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) |
![]() | GetType | Gets the Type of the current instance. (Inherited from Object.) |
![]() | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) |
![]() | ToString | Returns a string that represents the current object. (Inherited from Object.) |
The managed hosting environments that support dynamic activation are Internet Information Services (IIS) and Windows Process Activation Service (WAS).
If you have implemented a custom derivative of ServiceHost, consider also implementing a factory that derives from the ServiceHostFactory class.
If you have implemented a custom derivative of ServiceHostBase instead, then consider also implementing a factory that derives your factory from ServiceHostFactoryBase directly.
This examples show how to use the ServiceHostFactory class:
public class DerivedFactory : ServiceHostFactory { protected override ServiceHost CreateServiceHost( Type t, Uri[] baseAddresses ) { return new DerivedHost( t, baseAddresses ); } //Then in the CreateServiceHost method, we can do all of the //things that we can do in a self-hosted case: public override ServiceHostBase CreateServiceHost (string service, Uri[] baseAddresses) { // The service parameter is ignored here because we know our service. ServiceHost serviceHost = new ServiceHost(typeof(HelloService), baseAddresses); return serviceHost; } }
Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
