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.Framework.ServiceProvider
    Microsoft.VisualStudio.Data.Framework.DataSiteableServiceProvider<T>

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

Syntaxe

'Déclaration
<ComVisibleAttribute(True)> _
Public Class ServiceProvider _
    Implements IServiceContainer, IServiceProvider, IServiceProvider
[ComVisibleAttribute(true)]
public class ServiceProvider : IServiceContainer, 
    IServiceProvider, IServiceProvider
[ComVisibleAttribute(true)]
public ref class ServiceProvider : IServiceContainer, 
    IServiceProvider, IServiceProvider
[<ComVisibleAttribute(true)>]
type ServiceProvider =  
    class 
        interface IServiceContainer 
        interface IServiceProvider 
        interface IServiceProvider 
    end
public class ServiceProvider implements IServiceContainer, IServiceProvider, IServiceProvider

Le type ServiceProvider expose les membres suivants.

Constructeurs

  Nom Description
Méthode publique ServiceProvider() Initialise une nouvelle instance d' IServiceProvidermanagé ou non managé.
Méthode publique ServiceProvider(IServiceProvider) Encapsule une interface non managée d' IServiceProvider accessible via l'interface managée d' IServiceProvider .
Méthode publique ServiceProvider(IServiceProvider) Initialise une nouvelle instance d'une interface non managée d' IServiceProvider .

Début

Propriétés

  Nom Description
Propriété protégée ParentProvider Obtient l'instance actuelle du fournisseur de services parent.

Début

Méthodes

  Nom Description
Méthode publique AddService(Type, ServiceCreatorCallback) Ajoute le service spécifié à la collection interne de services.
Méthode publique AddService(Type, Object) Ajoute le service spécifié à la collection interne de services.
Méthode publique AddService(Type, ServiceCreatorCallback, Boolean) Ajoute le service spécifié à la collection interne de services ou au conteneur parent de service.
Méthode publique AddService(Type, Object, Boolean) Ajoute le service spécifié à la collection d'objets de service ou le conteneur parent de service.
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 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 RemoveService(Type) Supprime le service spécifié de la collection interne de services
Méthode publique RemoveService(Type, Boolean) Supprime le service spécifié de la collection interne de services ou du conteneur parent de service.
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é) dérive de l'interface d' IServiceProvider et la seconde (gérées) dérive d' IServiceProvider.

Cette classe atteint deux objectifs. D'abord, il fournit une classe managée pour créer une implémentation du non managé ou des interfaces managées d' IServiceProvider . Ensuite, il fournit une classe managée pour encapsuler et étendre une implémentation existante du code non managé ou des interfaces managées 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.Framework, espace de noms