RangeAttribute Class
Microsoft Silverlight will reach end of support after October 2021. Learn more.
Designates the minimum and maximum constraints for the associated member.
Inheritance Hierarchy
System.Object
System.Attribute
System.ComponentModel.DataAnnotations.ValidationAttribute
System.ComponentModel.DataAnnotations.RangeAttribute
Namespace: System.ComponentModel.DataAnnotations
Assembly: System.ComponentModel.DataAnnotations (in System.ComponentModel.DataAnnotations.dll)
Syntax
'Declaration
<AttributeUsageAttribute(AttributeTargets.Property Or AttributeTargets.Field Or AttributeTargets.Parameter, AllowMultiple := False)> _
Public Class RangeAttribute _
Inherits ValidationAttribute
[AttributeUsageAttribute(AttributeTargets.Property|AttributeTargets.Field|AttributeTargets.Parameter, AllowMultiple = false)]
public class RangeAttribute : ValidationAttribute
The RangeAttribute type exposes the following members.
Constructors
Name | Description | |
---|---|---|
RangeAttribute(Double, Double) | Initializes a new instance of the RangeAttribute class with specified double values as the minimum and maximum limits. | |
RangeAttribute(Int32, Int32) | Initializes a new instance of the RangeAttribute class with specified integer values as the minimum and maximum limits. | |
RangeAttribute(Type, String, String) | Initializes a new instance of the RangeAttribute class with the specified minimum and maximum values converted to the specified type. |
Top
Properties
Name | Description | |
---|---|---|
ErrorMessage | Gets or sets the non-localizable error message to display when validation fails. (Inherited from ValidationAttribute.) | |
ErrorMessageResourceName | Gets or sets the property name on the resource type that provides the localizable error message. (Inherited from ValidationAttribute.) | |
ErrorMessageResourceType | Gets or sets the resource type that provides the localizable error message. (Inherited from ValidationAttribute.) | |
ErrorMessageString | Gets the localized or non-localized error message. (Inherited from ValidationAttribute.) | |
Maximum | Gets the maximum allowed value for the range. | |
Minimum | Gets the minimum allowed value for the range. | |
OperandType | Gets the type of the Minimum and Maximum values. |
Top
Methods
Name | Description | |
---|---|---|
Equals | Infrastructure. Returns a value that indicates whether this instance is equal to a specified object. (Inherited from Attribute.) | |
Finalize | Allows an object to try to free resources and perform other cleanup operations before the Object is reclaimed by garbage collection. (Inherited from Object.) | |
FormatErrorMessage | Applies formatting to an error message based on the data field where the error occurred. (Overrides ValidationAttribute.FormatErrorMessage(String).) | |
GetHashCode | Returns the hash code for this instance. (Inherited from Attribute.) | |
GetType | Gets the Type of the current instance. (Inherited from Object.) | |
GetValidationResult | Determines whether the specified object is valid and returns an object that includes the results of the validation check. (Inherited from ValidationAttribute.) | |
IsValid | Determines whether the specified object is valid. (Inherited from ValidationAttribute.) | |
Match | When overridden in a derived class, returns a value that indicates whether this instance equals a specified object. (Inherited from Attribute.) | |
MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) | |
ToString | Returns a string that represents the current object. (Inherited from Object.) | |
Validate | Determines whether the specified object is valid and throws a ValidationException if the object is not valid. (Inherited from ValidationAttribute.) |
Top
Remarks
You apply the RangeAttribute attribute to a property when you need to specify minimum and maximum values for the property. A validation exception is raised if the value of the property is not within the minimum and maximum values.
If the value of the property is nulla null reference (Nothing in Visual Basic) or an empty string (""), the value will not fail validation for the RangeAttribute attribute. To validate that the value is not nulla null reference (Nothing in Visual Basic) or an empty string, use the RequiredAttribute attribute.
The RangeAttribute class provides the RangeAttribute(Int32, Int32) constructor to specify integer values for the range, and the RangeAttribute(Double, Double) constructor to specify double values for the range. The RangeAttribute class provides the RangeAttribute(Type, String, String) constructor to specify range values that are not integer or double values by enabling you to provide the type for the minimum and maximum values. The type must implement the IComparable interface. For example, to validate a property against a range of decimal values you must provide the type of the Decimal structure and two string values that will be converted to decimal values.
Examples
The following example shows how to specify integer range values for one property and decimal range values for another property.
Public Class Product
<Range(5, 50)> _
Public Property ReorderLevel As Integer
'Implement Get and Set logic
End Property
<Range(GetType(Decimal), "5", "5000")> _
Public Property ListPrice As Decimal
'Implement Get and Set logic
End Property
End Class
public class Product
{
[Range(5, 50)]
public int ReorderLevel { get; set; }
[Range(typeof(Decimal),"5", "5000")]
public decimal ListPrice { get; set; }
}
Version Information
Silverlight
Supported in: 5, 4, 3
Platforms
For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.
Thread Safety
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
See Also