Freigeben über


ValidationMethodAttribute-Klasse

Wenden Sie dieses Attribut auf Methoden an, die während der Validierung aufgerufen werden sollen.

Vererbungshierarchie

System.Object
  System.Attribute
    Microsoft.VisualStudio.Modeling.Validation.ValidationMethodAttribute

Namespace:  Microsoft.VisualStudio.Modeling.Validation
Assembly:  Microsoft.VisualStudio.Modeling.Sdk.12.0 (in Microsoft.VisualStudio.Modeling.Sdk.12.0.dll)

Syntax

'Declaration
<AttributeUsageAttribute(AttributeTargets.Method, AllowMultiple := True)> _
Public NotInheritable Class ValidationMethodAttribute _
    Inherits Attribute
[AttributeUsageAttribute(AttributeTargets.Method, AllowMultiple = true)]
public sealed class ValidationMethodAttribute : Attribute

Der ValidationMethodAttribute-Typ macht die folgenden Member verfügbar.

Konstruktoren

  Name Beschreibung
Öffentliche Methode ValidationMethodAttribute() Wenden Sie dieses Attribut auf Methoden an, die aufgerufen werden sollen, wenn der Benutzer den Menübefehl Überprüfen aufruft.
Öffentliche Methode ValidationMethodAttribute(ValidationCategories) Wenden Sie dieses Attribut auf Methoden an, die während der Validierung aufgerufen werden sollen.

Zum Seitenanfang

Eigenschaften

  Name Beschreibung
Öffentliche Eigenschaft Categories Definiert, wenn die Methode, auf die dieses Attribut angewendet wird, aufgerufen wird.
Öffentliche Eigenschaft CustomCategory Ruft die benutzerdefinierte Validierungskategorie ab, die leer sein kann, oder legt diese fest.
Öffentliche Eigenschaft TypeId Bei Implementierung in einer abgeleiteten Klasse wird ein eindeutiger Bezeichner für dieses Attribute abgerufen. (Von Attribute geerbt.)

Zum Seitenanfang

Methoden

  Name Beschreibung
Öffentliche Methode Equals Infrastruktur. Gibt einen Wert zurück, der angibt, ob diese Instanz gleich einem angegebenen Objekt ist. (Von Attribute geerbt.)
Öffentliche Methode GetHashCode Gibt den Hashcode für diese Instanz zurück. (Von Attribute geerbt.)
Öffentliche Methode GetType Ruft den Type der aktuellen Instanz ab. (Von Object geerbt.)
Öffentliche Methode IsDefaultAttribute Beim Überschreiben in einer abgeleiteten Klasse wird angegeben, ob der Wert dieser Instanz der Standardwert für die abgeleitete Klasse ist. (Von Attribute geerbt.)
Öffentliche Methode Match Beim Überschreiben in einer abgeleiteten Klasse wird ein Wert zurückgegeben, der angibt, ob diese Instanz einem bestimmten Objekt entspricht. (Von Attribute geerbt.)
Öffentliche Methode ToString Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Von Object geerbt.)

Zum Seitenanfang

Explizite Schnittstellen implementierungen

  Name Beschreibung
Explizite SchnittstellenimplementierungPrivate Methode _Attribute.GetIDsOfNames Ordnet eine Reihe von Namen einer entsprechenden Reihe von Dispatchbezeichnern zu. (Von Attribute geerbt.)
Explizite SchnittstellenimplementierungPrivate Methode _Attribute.GetTypeInfo Ruft die Typinformationen für ein Objekt ab, mit deren Hilfe die Typinformationen für eine Schnittstelle abgerufen werden können. (Von Attribute geerbt.)
Explizite SchnittstellenimplementierungPrivate Methode _Attribute.GetTypeInfoCount Ruft die Anzahl der Schnittstellen mit Typinformationen ab, die von einem Objekt bereitgestellt werden (0 oder 1). (Von Attribute geerbt.)
Explizite SchnittstellenimplementierungPrivate Methode _Attribute.Invoke Stellt den Zugriff auf von einem Objekt verfügbar gemachte Eigenschaften und Methoden bereit. (Von Attribute geerbt.)

Zum Seitenanfang

Hinweise

Die Categories-Eigenschaft bestimmt, wann das Attribut verwendet wird.

Weitere Informationen finden Sie unter Validierung in einer domänenspezifischen Sprache.

Beispiele

Im folgenden Beispiel wird eine Methode in der aufgerufen werden Personenklasse, wenn die Validierung auftritt. Die ValidationCategories-Enumerationseinstellung gibt an, wenn die Methode aufgerufen wird.

[C#]

[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);
        }
    }
}

Threadsicherheit

Alle öffentlichen static (Shared in Visual Basic)-Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Siehe auch

Referenz

Microsoft.VisualStudio.Modeling.Validation-Namespace