ValidationContext, classe
Contient des informations sur le traitement de la validation en cours d'exécution.
Hiérarchie d'héritage
System.Object
Microsoft.VisualStudio.Modeling.Validation.ValidationContext
Microsoft.VisualStudio.Modeling.Shell.VsValidationContext
Espace de noms : Microsoft.VisualStudio.Modeling.Validation
Assembly : Microsoft.VisualStudio.Modeling.Sdk.12.0 (dans Microsoft.VisualStudio.Modeling.Sdk.12.0.dll)
Syntaxe
'Déclaration
Public Class ValidationContext
public class ValidationContext
Le type ValidationContext expose les membres suivants.
Constructeurs
Nom | Description | |
---|---|---|
ValidationContext(array<String[], ModelElement) | Initialise une nouvelle instance de la classe ValidationContext qui a un élément de modèle spécifique à valider. | |
ValidationContext(array<String[], IEnumerable<ModelElement>) | Ctor | |
ValidationContext(ValidationCategories, ModelElement) | Constructeur | |
ValidationContext(ValidationCategories, IEnumerable<ModelElement>) | Constructeur |
Début
Propriétés
Nom | Description | |
---|---|---|
Categories | Obtient les catégories de validation de ce contexte de validation. | |
CurrentViolations | Obtient la collection de messages de validation pour le contexte de validation. | |
CustomCategories | Obtient les chaînes de validation personnalisées pour le contexte de validation. | |
ValidationSubjects | Obtient la liste d'éléments de modèle à valider. |
Début
Méthodes
Nom | Description | |
---|---|---|
ConstructValidationMessage | Construit un message de validation.Vous pouvez substituer cette méthode pour construire un message de validation personnalisé. | |
Equals | Détermine si l'objet spécifié est identique à l'objet 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.) | |
GetCache<T>() | Obtient le cache de la classe spécifiée. | |
GetCache<T>(String) | Obtient le cache de la classe spécifiée. | |
GetHashCode | Sert de fonction de hachage par défaut. (Hérité de Object.) | |
GetNavigationProxyModelElements | Obtient les éléments du modèle de proxy lorsqu'une erreur de validation se produit dans le modèle. | |
GetType | Obtient le Type de l'instance actuelle. (Hérité de Object.) | |
LogError | Crée une erreur de validation et enregistre un message dans la collection que le contexte de validation conserve. | |
LogFatal | Crée une erreur irrécupérable pour la validation et enregistre un message dans le contexte de validation. | |
LogMessage | Crée un message d'information de validation et l'enregistre dans la collection que le contexte de validation conserve. | |
LogViolation | Crée une erreur, un message ou un avertissement de validation. | |
LogWarning | Crée un avertissement de validation et enregistre le message dans la collection que le contexte de validation conserve. | |
MemberwiseClone | Crée une copie superficielle de l'objet Object actuel. (Hérité de Object.) | |
SetCacheValue<T> | Définit l'objet en mémoire cache associé au nom. | |
ToString | Retourne une chaîne qui représente l'objet actif. (Hérité de Object.) | |
TryGetCacheValue<T> | Retourne si l'objet mis en cache associé au nom existe ou n'existe pas |
Début
Notes
Une instance de cette classe est créée chaque fois que l'espace de noms de modélisation démarre le contrôle de validation. Cette instance est passée dans chaque méthode de validation que vous avez enregistrées pour la vérification de validation.
Chaque fois qu'une méthode de validation que vous écrivez est appelé, votre code peut signaler des erreurs de validation à l'aide de l'LogError, l'LogWarningles méthodes, et d'LogMessage. Les erreurs de validation sont ajoutées à la propriété d'CurrentViolations de l'objet d'ValidationContext.
Une fois la validation terminée, les erreurs, avertissements, messages et de validation sont représentés par des collections d'objets LogMessage dans la propriété d'CurrentViolations.
L'objet d'ValidationContext est ensuite transmise à toutes les méthodes de validation. La propriété d'CurrentViolations contient les erreurs, avertissements, des messages qui ont été rencontrée jusqu'à ce point dans le contrôle de validation actuel.
La prochaine fois que démarre de cette validation, un autre objet d'ValidationContext est créée. Si l'objet est passé à chaque méthode de validation à son tour des erreurs, des avertissements, des messages ajoutés à l'objet lorsqu'ils sont produits.
Pour plus d'informations, consultez Validation dans un langage spécifique à un domaine.
Exemples
L'exemple suivant est une méthode qui est décorée par un attribut qui indique qu'il s'agit d'une méthode de validation.
L'objet d'ValidationContext passé dans chaque méthode de validation contient des informations sur le traitement en cours de validation. Ces informations incluent les erreurs, des avertissements, des messages qui se sont accumulés dans les méthodes de validation qui ont déjà été exécuté.
L'objet d'ValidationContext contient les méthodes qui s'ajoutent des erreurs, des avertissements, des messages, comme la méthode d'LogError dans l'exemple suivant :
[ValidationMethod
(
ValidationCategory.Open |
ValidationCategory.Save |
ValidationCategory.Menu
)
]
private void ValidateParentBirth(ValidationContext context)
{
foreach (Person parent in this.Parent)
{
if (this.Birth <= parent.Birth)
{
context.LogError(
"Birth must be after Parent's birth",
"FamilyParentBirthError",
this,
parent);
}
}
}
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.