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 | |
---|---|---|
GlobalObjectService | Initialise une nouvelle instance de la classe d'GlobalObjectService |
Début
Méthodes
Nom | Description | |
---|---|---|
Equals | Détermine si l'objet Object spécifié est égal à l'objet Object actuel. (Hérité de Object.) | |
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.) | |
GetGlobalObjects() | Retourne une collection de tous les objets globaux disponibles. | |
GetGlobalObjects(Type) | Retourne une collection d'objets globaux disponibles qui sont du type spécifié. | |
GetGlobalTypes | Retourne une collection de types globaux disponibles. | |
GetHashCode | Sert de fonction de hachage pour un type particulier. (Hérité de Object.) | |
GetType | Obtient le Type de l'instance actuelle. (Hérité de Object.) | |
MemberwiseClone | Crée une copie superficielle de l'objet Object actuel. (Hérité de Object.) | |
ToString | Retourne une chaîne qui représente l'objet actuel. (Hérité de Object.) |
Début
Implémentations d'interface explicite
Nom | Description | |
---|---|---|
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
System.ComponentModel.Design.IReferenceService