Partilhar via


Classe ServiceProvider

Fornece um objeto que pode oferecer serviços usando as interfaces gerenciados e não gerenciados de IServiceProvider .

Hierarquia de herança

System.Object
  Microsoft.VisualStudio.Data.ServiceProvider
    Microsoft.VisualStudio.Data.DataConnection
    Microsoft.VisualStudio.Data.ServiceProviderWithSite

Namespace:  Microsoft.VisualStudio.Data
Assembly:  Microsoft.VisualStudio.Data (em Microsoft.VisualStudio.Data.dll)

Sintaxe

'Declaração
<ComVisibleAttribute(True)> _
Public Class ServiceProvider _
    Implements IServiceProvider, IServiceProvider
[ComVisibleAttribute(true)]
public class ServiceProvider : IServiceProvider, 
    IServiceProvider
[ComVisibleAttribute(true)]
public ref class ServiceProvider : IServiceProvider, 
    IServiceProvider
[<ComVisibleAttribute(true)>]
type ServiceProvider =  
    class
        interface IServiceProvider
        interface IServiceProvider
    end
public class ServiceProvider implements IServiceProvider, IServiceProvider

O tipo ServiceProvider expõe os membros a seguir.

Construtores

  Nome Descrição
Método protegido ServiceProvider() Construtor de classe para um provedor de serviços (IServiceProvider) gerenciado que seja acessível através da interface de IServiceProvider não gerenciado.
Método público ServiceProvider(IServiceProvider) Construtor da classe para envolver uma interface não gerenciado de IServiceProvider que seja acessível através da interface de IServiceProvider gerenciado.

Superior

Propriedades

  Nome Descrição
Propriedade protegida ServiceTypes Recupera uma lista de tipos de serviço usados para converter a chamada não gerenciado do método de QueryService , em que um serviço GUID é especificado, gerenciado em uma chamada de método IServiceProvider.GetService , em que um tipo gerenciado é especificado.

Superior

Métodos

  Nome Descrição
Método público Equals determina se o objeto especificado é igual ao objeto atual. (Herdado de Object.)
Método protegido Finalize Permite que um objeto tentar liberar recursos e realizar outras operações de limpeza antes de ser recuperados pela coleta de lixo. (Herdado de Object.)
Método público GetHashCode Serve como uma função de hash para um tipo específico. (Herdado de Object.)
Método público GetService(Guid) Recupera um serviço com um serviço GUID especificado.
Método público GetService(Type) Recupera um serviço do tipo especificado.
Método protegido GetServiceImpl(Guid) Fornece a implementação para recuperar um serviço com um GUID específico.
Método protegido GetServiceImpl(Type) Fornece a implementação para recuperar um serviço de um tipo específico.
Método público GetType Obtém Type da instância atual. (Herdado de Object.)
Método protegido MemberwiseClone Cria uma cópia superficial de Objectatual. (Herdado de Object.)
Método público ToString Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object.)

Superior

Implementações explícitas da interface

  Nome Descrição
Implementação explícita da interfaceMétodo particular IServiceProvider.QueryService Executa como uma fábrica para os serviços que são expostas com uma implementação de IServiceProvider.

Superior

Comentários

ObservaçãoObservação

Em o bloco de sintaxe anterior, a herança de classe deriva das interfaces gerenciados e não gerenciados de IServiceProvider .Isto é, o primeiro (não gerenciado) é interface de IServiceProvider e a segunda (gerenciada) é IServiceProvider.

Esta classe serve dois propósitos.Primeiro, fornece um wrapper em torno gerenciado de interfaces não gerenciadas de IServiceProvider .Segundo, fornece uma classe base gerenciado para implementar a interface de IServiceProvider não gerenciado.

Para ambos os casos, a interface de IServiceProvider gerenciado é implementada também, para que os clientes gerenciados de objeto podem se comunicar com o objeto usando código gerenciar- amigável.

Acesso thread-safe

Quaisquer membros estático (Shared no Visual Basic) públicos deste tipo são thread-safe. Não há garantia de que qualquer membro de instância seja thread-safe.

Consulte também

Referência

Namespace Microsoft.VisualStudio.Data