RangeAttribute Classe

Définition

Spécifie les contraintes de plage numérique pour la valeur d’un champ de données.

public ref class RangeAttribute : System::ComponentModel::DataAnnotations::ValidationAttribute
[System.AttributeUsage(System.AttributeTargets.Field | System.AttributeTargets.Parameter | System.AttributeTargets.Property, AllowMultiple=false)]
public class RangeAttribute : System.ComponentModel.DataAnnotations.ValidationAttribute
[System.AttributeUsage(System.AttributeTargets.Field | System.AttributeTargets.Property, AllowMultiple=false)]
public class RangeAttribute : System.ComponentModel.DataAnnotations.ValidationAttribute
[<System.AttributeUsage(System.AttributeTargets.Field | System.AttributeTargets.Parameter | System.AttributeTargets.Property, AllowMultiple=false)>]
type RangeAttribute = class
    inherit ValidationAttribute
[<System.AttributeUsage(System.AttributeTargets.Field | System.AttributeTargets.Property, AllowMultiple=false)>]
type RangeAttribute = class
    inherit ValidationAttribute
Public Class RangeAttribute
Inherits ValidationAttribute
Héritage
Attributs

Exemples

L’exemple suivant montre comment utiliser la RangeAttribute mise en forme pour un champ de données. L’exemple effectue les étapes suivantes :

  • Implémente une classe partielle de métadonnées et la classe de métadonnées associée.

  • Dans la classe de métadonnées associée, il applique l’attribut RangeAttribute pour obtenir les résultats suivants :

    • Appliquez l’attribut à un champ de données de type entier.

    • Appliquez l’attribut à un champ de données entier et définissez un message d’erreur de validation personnalisé.

    • Appliquez l’attribut à un DateTime champ de données et définissez un message d’erreur de validation personnalisé.

using System;
using System.Web.DynamicData;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel;

[MetadataType(typeof(ProductMetaData))]
public partial class Product
{
}

public class ProductMetaData
{
    
    [Range(10, 1000, 
        ErrorMessage = "Value for {0} must be between {1} and {2}.")]
    public object Weight;

    [Range(300, 3000)]
    public object ListPrice;

    [Range(typeof(DateTime), "1/2/2004", "3/4/2004",
        ErrorMessage = "Value for {0} must be between {1} and {2}")]
    public object SellEndDate;
}
Imports System.Web.DynamicData
Imports System.ComponentModel.DataAnnotations
Imports System.ComponentModel

<MetadataType(GetType(ProductMetaData))> _
Partial Public Class Product

End Class


Public Class ProductMetaData
    
    <Range(10, 1000, _
           ErrorMessage:="Value for {0} must be between {1} and {2}.")> _
    Public Weight As Object

    <Range(300, 3000)> _
    Public ListPrice As Object

    <Range(GetType(DateTime), "1/2/2004", "3/4/2004", _
           ErrorMessage:="Value for {0} must be between {1} and {2}")> _
    Public SellEndDate As Object

End Class

Pour compiler l’exemple, vous avez besoin des éléments suivants :

  • Microsoft Visual Studio 2008 Service Pack 1 ou Visual Web Developer 2008 Express Edition SP1.

  • Un site web piloté par les données. Cela vous permet de créer un contexte de données pour la base de données et la classe qui contient le champ de données à personnaliser. Pour plus d’informations, consultez Walkthrough: Creating a New Dynamic Data Web Site using Scaffolding.

Remarques

Lorsque vous appliquez cet attribut à un champ de données, vous devez suivre les instructions relatives à l’utilisation des attributs de validation.

Constructeurs

Nom Description
RangeAttribute(Double, Double)

Initialise une nouvelle instance de la RangeAttribute classe à l’aide des valeurs minimales et maximales spécifiées.

RangeAttribute(Int32, Int32)

Initialise une nouvelle instance de la RangeAttribute classe à l’aide des valeurs minimales et maximales spécifiées.

RangeAttribute(Type, String, String)

Initialise une nouvelle instance de la RangeAttribute classe à l’aide des valeurs minimales et maximales spécifiées et du type spécifique.

Propriétés

Nom Description
ConvertValueInInvariantCulture

Obtient ou définit une valeur qui détermine si les conversions de la valeur en cours de validation sont définies OperandType par le type paramètre du RangeAttribute(Type, String, String) constructeur utilisent la culture invariante ou la culture actuelle.

ErrorMessage

Obtient ou définit un message d’erreur à associer à un contrôle de validation en cas d’échec de la validation.

(Hérité de ValidationAttribute)
ErrorMessageResourceName

Obtient ou définit le nom de la ressource de message d’erreur à utiliser pour rechercher la valeur de propriété ErrorMessageResourceType en cas d’échec de la validation.

(Hérité de ValidationAttribute)
ErrorMessageResourceType

Obtient ou définit le type de ressource à utiliser pour la recherche de message d’erreur en cas d’échec de la validation.

(Hérité de ValidationAttribute)
ErrorMessageString

Obtient le message d’erreur de validation localisé.

(Hérité de ValidationAttribute)
Maximum

Obtient la valeur maximale autorisée du champ.

MaximumIsExclusive

Spécifie si la validation doit échouer pour les valeurs égales à Maximum.

Minimum

Obtient la valeur minimale autorisée du champ.

MinimumIsExclusive

Spécifie si la validation doit échouer pour les valeurs égales à Minimum.

OperandType

Obtient le type du champ de données dont la valeur doit être validée.

ParseLimitsInInvariantCulture

Obtient ou définit une valeur qui détermine si les valeurs de chaîne pour Minimum et Maximum sont analysées à l’aide de la culture invariante plutôt que de la culture actuelle.

RequiresValidationContext

Obtient une valeur qui indique si l’attribut nécessite un contexte de validation.

(Hérité de ValidationAttribute)
TypeId

En cas d’implémentation dans une classe dérivée, obtient un identificateur unique pour cette Attribute.

(Hérité de Attribute)

Méthodes

Nom Description
Equals(Object)

Retourne une valeur qui indique si cette instance est égale à un objet spécifié.

(Hérité de Attribute)
FormatErrorMessage(String)

Met en forme le message d’erreur qui s’affiche lorsque la validation de plage échoue.

GetHashCode()

Retourne le code de hachage pour cette instance.

(Hérité de Attribute)
GetType()

Obtient la Type de l’instance actuelle.

(Hérité de Object)
GetValidationResult(Object, ValidationContext)

Vérifie si la valeur spécifiée est valide par rapport à l’attribut de validation actuel.

(Hérité de ValidationAttribute)
IsDefaultAttribute()

En cas de substitution dans une classe dérivée, indique si la valeur de cette instance est la valeur par défaut de la classe dérivée.

(Hérité de Attribute)
IsValid(Object, ValidationContext)

Valide la valeur spécifiée par rapport à l’attribut de validation actuel.

(Hérité de ValidationAttribute)
IsValid(Object)

Vérifie que la valeur du champ de données se trouve dans la plage spécifiée.

Match(Object)

En cas de substitution dans une classe dérivée, retourne une valeur qui indique si cette instance est égale à un objet spécifié.

(Hérité de Attribute)
MemberwiseClone()

Crée une copie superficielle du Objectactuel.

(Hérité de Object)
ToString()

Retourne une chaîne qui représente l’objet actuel.

(Hérité de Object)
Validate(Object, String)

Valide l’objet spécifié.

(Hérité de ValidationAttribute)
Validate(Object, ValidationContext)

Valide l’objet spécifié.

(Hérité de ValidationAttribute)

Implémentations d’interfaces explicites

Nom Description
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Mappe un jeu de noms avec un jeu correspondant d'identificateurs de dispatch.

(Hérité de Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Récupère les informations de type d’un objet, qui peuvent être utilisées pour obtenir les informations de type d’une interface.

(Hérité de Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Récupère le nombre d'interfaces d'informations de type fourni par un objet (0 ou 1).

(Hérité de Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Fournit l’accès aux propriétés et méthodes exposées par un objet.

(Hérité de Attribute)

S’applique à