Partager via


GlobalObjectService, classe

Maintient le tableau actuel des fournisseurs d'objets globaux.Cette classe ne peut pas être héritée.

Cette API n'est pas conforme CLS. 

Hiérarchie d'héritage

System.Object
  Microsoft.VisualStudio.Shell.Design.GlobalObjectService

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

Syntaxe

'Déclaration
<CLSCompliantAttribute(False)> _
Public NotInheritable Class GlobalObjectService _
    Implements IDisposable
[CLSCompliantAttribute(false)]
public sealed class GlobalObjectService : IDisposable

Le type GlobalObjectService expose les membres suivants.

Constructeurs

  Nom Description
Méthode publique GlobalObjectService Initialise une nouvelle instance de la classe d'GlobalObjectService

Début

Méthodes

  Nom Description
Méthode publique Equals Détermine si l'objet Object spécifié est égal à l'objet Object actuel. (Hérité de Object.)
Méthode protégée Finalize Autorise un objet à tenter de libérer des ressources et d'exécuter d'autres opérations de nettoyage avant qu'il ne soit récupéré par l'opération garbage collection. (Hérité de Object.)
Méthode publique GetGlobalObjects() Retourne une collection de tous les objets globaux disponibles.
Méthode publique GetGlobalObjects(Type) Retourne une collection d'objets globaux disponibles qui sont du type spécifié.
Méthode publique GetGlobalTypes Retourne une collection de types globaux disponibles.
Méthode publique GetHashCode Sert de fonction de hachage pour un type particulier. (Hérité de Object.)
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 de l'objet 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 IDisposable.Dispose Supprime GlobalObjectService.

Début

Remarques

La classe d'GlobalObjectService est interrogée par les outils au moment du design pour obtenir des informations sur les objets globaux disponibles et les types.GetGlobalObjects et les collections de retour de méthodes d'GetGlobalTypes contenant les objets globaux actuellement disponibles et les types globaux, respectivement.GlobalObjectService est généralement interrogé par les objets du type IReferenceService et ITypeResolutionService.

Lorsque le chargeur concepteur est initialisé, il crée une instance unique du service global d'objet qu'elle associe avec l'aire de conception.Avec cette disposition, des objets globaux peuvent être persistés quasi-totalité, à l'aide d'une modèle arbitraire de sérialisation.En interne, le service global d'objet exécute les fonctions suivantes :

  • Il interroge les différents fournisseurs d'objets globaux pour les objets globaux.Chaque objet global retourné est interrogé pour un sérialiseur compatible, et si aucun n'est recherché, qu'objet global est ignoré car il ne peut pas être sérialisé.

  • Elle maintient un tableau des objets globaux.Ce tableau suit que les objets globaux sont origine de quel fournisseur.Après qu'un objet global soit ajouté au tableau, le service global d'objet écoute des événements sur l'objet global.

  • Lorsque l'instance globale d'un objet est créée, elle ajoute des métadonnées à l'instance qu'elle puisse être sérialisée.Le sérialiseur est obtenu par un appel à GetSerializer sur l'objet global lui-même.

  • Il surveille les événements de modification pour chaque objet global.Lorsqu'un événement de modification est déclenché le service global d'objet déclenche un événement d'AssemblyObsolete au service dynamique de type pour chaque assembly unique.Elle passe un tableau de types dans l'événement, donc également ceux qui écoutent savent exactement quels types sont valides.Cette liste est accumulée dans deux séries en réponse aux événements d'Changing et d'Changed.CodeDomDesignerLoader surveille des événements d'AssemblyObsolete et recharge le générateur si l'assembly contenu dans l'événement est utilisé par le générateur.

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.Shell.Design, espace de noms

GlobalObject

GlobalType

GlobalObjectProvider

GlobalObjectProviderFactory

System.ComponentModel.Design.IReferenceService

System.ComponentModel.Design.ITypeResolutionService

CodeDomDesignerLoader