RangeAttribute Класс

Определение

Задает ограничения числовых диапазонов для значения поля данных.

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
Наследование
Атрибуты

Примеры

В следующем примере показано, как настроить RangeAttribute форматирование для поля данных. В примере выполняются следующие действия.

  • Реализует частичный класс метаданных и связанный класс метаданных.

  • В связанном классе метаданных атрибут применяется RangeAttribute для получения следующих результатов:

    • Примените атрибут к полю данных целого числа типа.

    • Примените атрибут к целочисленной области данных и определите пользовательское сообщение об ошибке проверки.

    • Примените атрибут к DateTime полю данных и определите пользовательское сообщение об ошибке проверки.

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

Чтобы скомпилировать пример, вам потребуется следующее:

  • Майкрософт Visual Studio 2008 с пакетом обновления 1 (SP1) или Visual Web Developer 2008 Express Edition с пакетом обновления 1 (SP1).

  • Веб-сайт на основе данных. Это позволяет создать контекст данных для базы данных и класса, содержащего поле данных для настройки. Дополнительные сведения см. в разделе Walkthrough: Creating a New Dynamic Data Web Site using Scaffolding.

Комментарии

При применении этого атрибута к полю данных необходимо следовать рекомендациям по использованию атрибутов проверки.

Конструкторы

Имя Описание
RangeAttribute(Double, Double)

Инициализирует новый экземпляр класса с помощью указанных минимальных RangeAttribute и максимальных значений.

RangeAttribute(Int32, Int32)

Инициализирует новый экземпляр класса с помощью указанных минимальных RangeAttribute и максимальных значений.

RangeAttribute(Type, String, String)

Инициализирует новый экземпляр RangeAttribute класса с помощью указанных минимальных и максимальных значений и конкретного типа.

Свойства

Имя Описание
ConvertValueInInvariantCulture

Возвращает или задает значение, определяющее, используются ли преобразования значения, проверяемые OperandTypetype в соответствии с параметром RangeAttribute(Type, String, String) конструктора, используйте инвариантный язык и региональные параметры или текущий язык и региональные параметры.

ErrorMessage

Возвращает или задает сообщение об ошибке для связывания с элементом управления проверки, если проверка завершается ошибкой.

(Унаследовано от ValidationAttribute)
ErrorMessageResourceName

Возвращает или задает имя ресурса сообщения об ошибке для поиска ErrorMessageResourceType значения свойства, если проверка завершается ошибкой.

(Унаследовано от ValidationAttribute)
ErrorMessageResourceType

Возвращает или задает тип ресурса, используемый для поиска сообщений об ошибке, если проверка завершается ошибкой.

(Унаследовано от ValidationAttribute)
ErrorMessageString

Возвращает локализованное сообщение об ошибке проверки.

(Унаследовано от ValidationAttribute)
Maximum

Возвращает максимально допустимое значение поля.

MaximumIsExclusive

Указывает, должна ли проверка завершать ошибку для значений, равных Maximum.

Minimum

Возвращает минимально допустимое значение поля.

MinimumIsExclusive

Указывает, должна ли проверка завершать ошибку для значений, равных Minimum.

OperandType

Возвращает тип поля данных, значение которого необходимо проверить.

ParseLimitsInInvariantCulture

Возвращает или задает значение, определяющее, являются ли строковые значения для Minimum и Maximum анализируются с помощью инвариантного языка и региональных параметров, а не текущего языка и региональных параметров.

RequiresValidationContext

Возвращает значение, указывающее, требуется ли для атрибута контекст проверки.

(Унаследовано от ValidationAttribute)
TypeId

При реализации в производном классе получает уникальный идентификатор для этого Attribute.

(Унаследовано от Attribute)

Методы

Имя Описание
Equals(Object)

Возвращает значение, указывающее, равен ли этот экземпляр указанному объекту.

(Унаследовано от Attribute)
FormatErrorMessage(String)

Форматирует сообщение об ошибке, отображаемое при сбое проверки диапазона.

GetHashCode()

Возвращает хэш-код для этого экземпляра.

(Унаследовано от Attribute)
GetType()

Возвращает Type текущего экземпляра.

(Унаследовано от Object)
GetValidationResult(Object, ValidationContext)

Проверяет, является ли указанное значение допустимым в отношении текущего атрибута проверки.

(Унаследовано от ValidationAttribute)
IsDefaultAttribute()

При переопределении в производном классе указывает, является ли значение этого экземпляра значением по умолчанию для производного класса.

(Унаследовано от Attribute)
IsValid(Object, ValidationContext)

Проверяет указанное значение относительно текущего атрибута проверки.

(Унаследовано от ValidationAttribute)
IsValid(Object)

Проверяет, находится ли значение поля данных в указанном диапазоне.

Match(Object)

При переопределении в производном классе возвращает значение, указывающее, равен ли этот экземпляр указанному объекту.

(Унаследовано от Attribute)
MemberwiseClone()

Создает неглубокую копию текущей Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)
Validate(Object, String)

Проверяет указанный объект.

(Унаследовано от ValidationAttribute)
Validate(Object, ValidationContext)

Проверяет указанный объект.

(Унаследовано от ValidationAttribute)

Явные реализации интерфейса

Имя Описание
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Сопоставляет набор имен соответствующему набору идентификаторов диспетчеризации.

(Унаследовано от Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Извлекает сведения о типе объекта, который можно использовать для получения сведений о типе для интерфейса.

(Унаследовано от Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Возвращает количество предоставляемых объектом интерфейсов для доступа к сведениям о типе (0 или 1).

(Унаследовано от Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Предоставляет доступ к свойствам и методам, предоставляемым объектом.

(Унаследовано от Attribute)

Применяется к