ServiceProvider, classe

Fournit un objet qui peut offrir des services à l'aide de les interfaces managées et non managées de IServiceProvider .

Hiérarchie d'héritage

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

Espace de noms :  Microsoft.VisualStudio.Data
Assembly :  Microsoft.VisualStudio.Data (dans Microsoft.VisualStudio.Data.dll)

Syntaxe

'Déclaration
<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

Le type ServiceProvider expose les membres suivants.

Constructeurs

  Nom Description
Méthode protégée ServiceProvider() Classez le constructeur pour un fournisseur de services managé (IServiceProvider) qui est accessible via l'interface non managée d' IServiceProvider .
Méthode publique ServiceProvider(IServiceProvider) Classez le constructeur pour encapsuler une interface non managée d' IServiceProvider accessible via l'interface managée d' IServiceProvider .

Début

Propriétés

  Nom Description
Propriété protégée ServiceTypes Extrait une liste des types de service utilisés pour convertir l'appel de méthode non managé d' QueryService , dans lequel un service GUID est spécifié, dans un appel de méthode managé d' IServiceProvider.GetService , dans lequel un type managé est spécifié.

Début

Méthodes

  Nom Description
Méthode publique Equals Détermine si l'objet spécifié est identique à l'objet actuel. (Hérité de Object.)
Méthode protégée Finalize Autorise un objet à tenter de libérer des ressources et à exécuter d'autres opérations de nettoyage avant qu'il ne soit récupéré par une opération garbage collection. (Hérité de Object.)
Méthode publique GetHashCode Sert de fonction de hachage par défaut. (Hérité de Object.)
Méthode publique GetService(Guid) Récupère un service avec un service spécifié un GUID.
Méthode publique GetService(Type) Récupère un service du type spécifié.
Méthode protégée GetServiceImpl(Guid) Fournit l'implémentation pour récupérer un service avec un GUID spécifique.
Méthode protégée GetServiceImpl(Type) Fournit l'implémentation pour récupérer un service d'un type spécifique.
Méthode publique GetType Obtient le Type de l'instance actuelle. (Hérité de Object.)
Méthode protégée MemberwiseClone Crée une copie superficielle du Object actuel. (Hérité de Object.)
Méthode publique ToString Retourne une chaîne qui représente l'objet actuel. (Hérité de Object.)

Début

Implémentations d'interface explicite

  Nom Description
Implémentation d'interface expliciteMéthode privée IServiceProvider.QueryService Effectue une fabrique pour les services qui sont exposés via une implémentation d'IServiceProvider.

Début

Notes

Notes

Dans le bloc de syntaxe ci-dessus, l'héritage de classe dérive des interfaces managées et non managées de IServiceProvider .Autrement dit, le premier (non managé) est interface d' IServiceProvider et la seconde (gérée) est IServiceProvider.

Cette classe atteint deux objectifs. D'abord, il fournit un wrapper managé autour de l'interface non managée d' IServiceProvider . Ensuite, il fournit une classe de base managée pour implémenter l'interface non managée d' IServiceProvider .

Pour les deux cas, l'interface managée d' IServiceProvider est également implémentée, les clients managés de l'objet peuvent communiquer avec l'objet à l'aide de le code gérer- convivial.

Sécurité des threads

Tous les membres static (Shared en Visual Basic) publics de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.

Voir aussi

Référence

Microsoft.VisualStudio.Data, espace de noms