Share via


ServiceProvider (Clase)

Proporciona un objeto que puede obtener servicios utilizando las interfaces administradas y no administradas de IServiceProvider .

Jerarquía de herencia

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

Espacio de nombres:  Microsoft.VisualStudio.Data
Ensamblado:  Microsoft.VisualStudio.Data (en Microsoft.VisualStudio.Data.dll)

Sintaxis

'Declaración
<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

El tipo ServiceProvider expone los siguientes miembros.

Constructores

  Nombre Descripción
Método protegido ServiceProvider() Constructor de clase para un proveedor de servicios administrado (IServiceProvider) que es accesible a través de la interfaz no administrada de IServiceProvider .
Método público ServiceProvider(IServiceProvider) Constructor de clase para ajustar una interfaz no administrada de IServiceProvider que es accesible a través de la interfaz administrada de IServiceProvider .

Arriba

Propiedades

  Nombre Descripción
Propiedad protegida ServiceTypes Recupera una lista de tipos de servicio utilizados para convertir la llamada al método no administrado de QueryService , en la que un servicio GUID se especifica, en una llamada al método administrado de IServiceProvider.GetService , en la que se especifica un tipo administrado.

Arriba

Métodos

  Nombre Descripción
Método público Equals Determina si el objeto especificado es igual al objeto actual. (Se hereda de Object).
Método protegido Finalize Permite que un objeto intente liberar recursos y realizar otras operaciones de limpieza antes de ser reclamado por la recolección de elementos no utilizados. (Se hereda de Object).
Método público GetHashCode Actúa como función hash para un tipo concreto. (Se hereda de Object).
Método público GetService(Guid) Recupera un servicio con un servicio especificado GUID.
Método público GetService(Type) Recupera un servicio del tipo especificado.
Método protegido GetServiceImpl(Guid) Proporciona la implementación para recuperar un servicio con un GUID específico.
Método protegido GetServiceImpl(Type) Proporciona la implementación para recuperar un servicio de un tipo específico.
Método público GetType Obtiene el objeto Type de la instancia actual. (Se hereda de Object).
Método protegido MemberwiseClone Crea una copia superficial del objeto Object actual. (Se hereda de Object).
Método público ToString Devuelve una cadena que representa el objeto actual. (Se hereda de Object).

Arriba

Implementaciones explícitas de interfaces

  Nombre Descripción
Implementación explícita de interfacesMétodo privado IServiceProvider.QueryService Realiza como generador para los servicios que se exponen con una implementación de IServiceProvider.

Arriba

Comentarios

[!NOTA]

En la sintaxis bloqueada anteriormente, la herencia de la clase deriva de las interfaces administradas y no administradas de IServiceProvider .Es decir, el primer (no administrado) es interfaz de IServiceProvider y la segunda (administrado) es IServiceProvider.

Esta clase sirve para dos propósitos.Primero, proporciona un contenedor administrado alrededor de la interfaz no administrada de IServiceProvider .Segundo, proporciona una clase base administrada para implementar la interfaz no administrada de IServiceProvider .

En ambos casos, la interfaz administrada de IServiceProvider también se implementa, para que los clientes administrados de objeto pueden comunicarse con el objeto mediante código administrar- fácil de usar.

Seguridad para subprocesos

Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.

Vea también

Referencia

Microsoft.VisualStudio.Data (Espacio de nombres)