Compartir a través de


ValidationMethodAttribute (Clase)

Aplicar este atributo a los métodos que se deben invocar durante la validación.

Jerarquía de herencia

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

Espacio de nombres:  Microsoft.VisualStudio.Modeling.Validation
Ensamblado:  Microsoft.VisualStudio.Modeling.Sdk.12.0 (en Microsoft.VisualStudio.Modeling.Sdk.12.0.dll)

Sintaxis

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

El tipo ValidationMethodAttribute expone los siguientes miembros.

Constructores

  Nombre Descripción
Método público ValidationMethodAttribute() Aplicar este atributo a los métodos que desea llamar cuando el usuario invoca el comando de menú Validar.
Método público ValidationMethodAttribute(ValidationCategories) Aplicar este atributo a los métodos que desea llamar durante la validación.

Arriba

Propiedades

  Nombre Descripción
Propiedad pública Categories Define cuándo se llamará al método al que se aplica este atributo.
Propiedad pública CustomCategory Obtiene o establece la categoría de validación personalizada, que puede estar vacía.
Propiedad pública TypeId Cuando se implementa en una clase derivada, obtiene un identificador único para este Attribute. (Se hereda de Attribute).

Arriba

Métodos

  Nombre Descripción
Método público Equals Infraestructura. Devuelve un valor que indica si esta instancia equivale a un objeto especificado. (Se hereda de Attribute).
Método público GetHashCode Devuelve el código hash de esta instancia. (Se hereda de Attribute).
Método público GetType Obtiene el objeto Type de la instancia actual. (Se hereda de Object).
Método público IsDefaultAttribute Cuando se invalida en una clase derivada, indica si el valor de esta instancia es el valor predeterminado para la clase derivada. (Se hereda de Attribute).
Método público Match Cuando se invalida en una clase derivada, devuelve un valor que indica si esta instancia es igual a un objeto especificado. (Se hereda de Attribute).
Método público ToString Devuelve una cadena que representa el objeto actual. (Se hereda de Object).

Arriba

Implementaciones de interfaz explícita

  Nombre Descripción
Implementación explícita de interfacesMétodo privado _Attribute.GetIDsOfNames Asigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío. (Se hereda de Attribute).
Implementación explícita de interfacesMétodo privado _Attribute.GetTypeInfo Obtiene la información de tipos de un objeto, que puede utilizarse para obtener la información de tipos de una interfaz. (Se hereda de Attribute).
Implementación explícita de interfacesMétodo privado _Attribute.GetTypeInfoCount Recupera el número de interfaces de información de tipo que proporciona un objeto (0 ó 1). (Se hereda de Attribute).
Implementación explícita de interfacesMétodo privado _Attribute.Invoke Proporciona acceso a las propiedades y los métodos expuestos por un objeto. (Se hereda de Attribute).

Arriba

Comentarios

La propiedad de Categories determina cuando se utiliza el atributo.

Para obtener más información, vea La validación en los lenguajes específicos de dominio.

Ejemplos

El ejemplo siguiente decora un método en la clase person que se invocará cuando la validación se produce. El valor de la enumeración de ValidationCategories indica cuando el método se invocará.

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

Seguridad para subprocesos

Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.

Vea también

Referencia

Microsoft.VisualStudio.Modeling.Validation (Espacio de nombres)