ServiceHost Construtores
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Inicializa uma nova instância da ServiceHost classe.
Sobrecargas
| Name | Description |
|---|---|
| ServiceHost() |
Inicializa uma nova instância da ServiceHost classe. |
| ServiceHost(Object, Uri[]) |
Inicializa uma nova instância da ServiceHost classe com a instância do serviço e os seus endereços base especificados. |
| ServiceHost(Type, Uri[]) |
Inicializa uma nova instância da ServiceHost classe com o tipo de serviço e os seus endereços base especificados. |
ServiceHost()
Inicializa uma nova instância da ServiceHost classe.
protected:
ServiceHost();
protected ServiceHost();
Protected Sub New ()
Observações
Existem dois construtores usados para criar uma instância da ServiceHost classe. Use o ServiceHost(Type, Uri[]) construtor que recebe o tipo de serviço como parâmetro de entrada, na maioria das vezes. O anfitrião pode usar isto para criar novos serviços conforme necessário. Usa o ServiceHost(Object, Uri[]) construtor apenas quando quiseres que o host do serviço use uma instância singleton específica do serviço.
Aplica-se a
ServiceHost(Object, Uri[])
Inicializa uma nova instância da ServiceHost classe com a instância do serviço e os seus endereços base especificados.
public:
ServiceHost(System::Object ^ singletonInstance, ... cli::array <Uri ^> ^ baseAddresses);
public ServiceHost(object singletonInstance, params Uri[] baseAddresses);
new System.ServiceModel.ServiceHost : obj * Uri[] -> System.ServiceModel.ServiceHost
Public Sub New (singletonInstance As Object, ParamArray baseAddresses As Uri())
Parâmetros
- singletonInstance
- Object
A instância do serviço alojado.
Exceções
singletonInstance é null.
Exemplos
CalculatorService service = new CalculatorService();
ServiceHost serviceHost = new ServiceHost(service, baseAddress);
Dim service As CalculatorService = New CalculatorService()
Dim serviceHost As ServiceHost = New ServiceHost(service, baseAddress)
Observações
Use este construtor como alternativa à implementação de um custom System.ServiceModel.Dispatcher.IInstanceContextInitializer quando quiser fornecer uma instância de objeto específica para uso por um serviço singleton. Pode querer usar esta sobrecarga quando o tipo de implementação do seu serviço for difícil de construir (por exemplo, se não implementar um construtor público padrão que não tenha parâmetros).
Note-se que, quando um objeto é fornecido a esta sobrecarga, algumas funcionalidades relacionadas com o comportamento de instanciação da Windows Communication Foundation (WCF) funcionam de forma diferente. Por exemplo, chamar InstanceContext.ReleaseServiceInstance não tem efeito quando uma instância de objeto bem conhecida é fornecida usando esta sobrecarga de construtores. Da mesma forma, qualquer outro mecanismo de liberação de instância é ignorado. O ServiceHost sempre se comporta, para todas as operações, como se a propriedade OperationBehaviorAttribute.ReleaseInstanceMode estivesse definida para ReleaseInstanceMode.None.
Aplica-se a
ServiceHost(Type, Uri[])
Inicializa uma nova instância da ServiceHost classe com o tipo de serviço e os seus endereços base especificados.
public:
ServiceHost(Type ^ serviceType, ... cli::array <Uri ^> ^ baseAddresses);
public ServiceHost(Type serviceType, params Uri[] baseAddresses);
new System.ServiceModel.ServiceHost : Type * Uri[] -> System.ServiceModel.ServiceHost
Public Sub New (serviceType As Type, ParamArray baseAddresses As Uri())
Parâmetros
- serviceType
- Type
O tipo de serviço alojado.
Exceções
serviceType é null.
Exemplos
Este exemplo ilustra como usar a classe ServiceHost para hospedar um serviço Windows Communication Foundation:
ServiceHost serviceHost = new ServiceHost(typeof(CalculatorService), baseAddress);
Dim svcHost As ServiceHost = New ServiceHost(GetType(CalculatorService), baseAddress)
Observações
Usa este construtor quando tiveres o tipo de serviço e podes criar novas instâncias dele quando necessário, mesmo quando precisares de uma instância singleton. Usa o ServiceHost(Object, Uri[]) construtor apenas quando quiseres que o host do serviço use uma instância singleton específica do serviço.