RegularExpressionAttribute 类

定义

指定 ASP.NET 动态数据中的数据字段值必须与指定的正则表达式匹配。Specifies that a data field value in ASP.NET Dynamic Data must match the specified regular expression.

public ref class RegularExpressionAttribute : System::ComponentModel::DataAnnotations::ValidationAttribute
[System.AttributeUsage(System.AttributeTargets.Field | System.AttributeTargets.Parameter | System.AttributeTargets.Property, AllowMultiple=false)]
public class RegularExpressionAttribute : System.ComponentModel.DataAnnotations.ValidationAttribute
public class RegularExpressionAttribute : System.ComponentModel.DataAnnotations.ValidationAttribute
[System.AttributeUsage(System.AttributeTargets.Field | System.AttributeTargets.Property, AllowMultiple=false)]
public class RegularExpressionAttribute : System.ComponentModel.DataAnnotations.ValidationAttribute
[<System.AttributeUsage(System.AttributeTargets.Field | System.AttributeTargets.Parameter | System.AttributeTargets.Property, AllowMultiple=false)>]
type RegularExpressionAttribute = class
    inherit ValidationAttribute
type RegularExpressionAttribute = class
    inherit ValidationAttribute
[<System.AttributeUsage(System.AttributeTargets.Field | System.AttributeTargets.Property, AllowMultiple=false)>]
type RegularExpressionAttribute = class
    inherit ValidationAttribute
Public Class RegularExpressionAttribute
Inherits ValidationAttribute
继承
RegularExpressionAttribute
属性

示例

下面的示例演示如何使用 RegularExpressionAttribute 属性来验证 FirstName 和 LastName 数据字段。The following example shows how to use the RegularExpressionAttribute attribute to validate the FirstName and LastName data fields. 正则表达式最多可包含40的大写和小写字符。The regular expression allows up to 40 uppercase and lowercase characters. 该示例执行以下任务:The example performs the following tasks:

  • 实现元数据分部类和关联的元数据类。Implements a metadata partial class and the associated metadata class.

  • 在关联的元数据类中,将属性应用于 RegularExpressionAttribute FirstName 和 LastName 数据字段,同时指定模式和自定义错误消息。In the associated metadata class, applies the RegularExpressionAttribute attribute to the FirstName and LastName data fields, specifying the pattern and custom error messages.

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

[MetadataType(typeof(CustomerMetaData))]
public partial class Customer
{
}

public class CustomerMetaData
{
   
    // Allow up to 40 uppercase and lowercase 
    // characters. Use custom error.
    [RegularExpression(@"^[a-zA-Z''-'\s]{1,40}$", 
         ErrorMessage = "Characters are not allowed.")]
    public object FirstName;

    // Allow up to 40 uppercase and lowercase 
    // characters. Use standard error.
    [RegularExpression(@"^[a-zA-Z''-'\s]{1,40}$")]
    public object LastName;
}

Imports System.Web.DynamicData
Imports System.ComponentModel.DataAnnotations


<MetadataType(GetType(CustomerMetaData))> _
Partial Public Class Customer

    
End Class

Public Class CustomerMetaData
    
    ' Allow up to 40 uppercase and lowercase 
    ' characters. Use custom error.
    <RegularExpression("^[a-zA-Z''-'\s]{1,40}$", _
                       ErrorMessage:="Characters are not allowed.")> _
    Public FirstName As Object

    ' Allow up to 40 uppercase and lowercase 
    ' characters. Use standard error.
    <RegularExpression("^[a-zA-Z''-'\s]{1,40}$")> _
    Public LastName As Object
End Class

注解

在需要针对正则表达式验证属性的值时,可将 RegularExpressionAttribute 特性应用于属性。You apply the RegularExpressionAttribute attribute to a property when you need to validate values for the property against a regular expression. 正则表达式使您能够精确指定有效值的格式。The regular expression enables you to specify very precisely the format of valid values. Pattern 属性包含正则表达式。The Pattern property contains the regular expression. 如果属性的值为 null 或空字符串 ( "" ) ,则该值自动传递 RegularExpressionAttribute 属性的验证。If the value of the property is null or an empty string (""), the value automatically passes validation for the RegularExpressionAttribute attribute. 若要验证值是否不是 null 或空字符串,请使用 有 requiredattribute 属性。To validate that the value is not null or an empty string, use the RequiredAttribute attribute.

正则表达式搜索完全匹配项,而不是在模式结束时使用,而是使用 ^ $ 它生成的结果相同。The regular expression searches for an exact match, not using ^ before and $ at the end of the pattern produces the same results as using it. 对于搜索命中,使用预置并追加模式 .*For a search hit, prepend and append the pattern with .*.

构造函数

RegularExpressionAttribute(String)

初始化 RegularExpressionAttribute 类的新实例。Initializes a new instance of the RegularExpressionAttribute class.

属性

ErrorMessage

获取或设置一条在验证失败的情况下与验证控件关联的错误消息。Gets or sets an error message to associate with a validation control if validation fails.

(继承自 ValidationAttribute)
ErrorMessageResourceName

获取或设置错误消息资源的名称,在验证失败的情况下,要使用该名称来查找 ErrorMessageResourceType 属性值。Gets or sets the error message resource name to use in order to look up the ErrorMessageResourceType property value if validation fails.

(继承自 ValidationAttribute)
ErrorMessageResourceType

获取或设置在验证失败的情况下用于查找错误消息的资源类型。Gets or sets the resource type to use for error-message lookup if validation fails.

(继承自 ValidationAttribute)
ErrorMessageString

获取本地化的验证错误消息。Gets the localized validation error message.

(继承自 ValidationAttribute)
MatchTimeoutInMilliseconds

获取或设置用于在操作超时前执行单个匹配操作的时间量(以毫秒为单位)。Gets or sets the amount of time in milliseconds to execute a single matching operation before the operation times out.

Pattern

获取正则表达式模式。Gets the regular expression pattern.

RequiresValidationContext

获取指示特性是否要求验证上下文的值。Gets a value that indicates whether the attribute requires validation context.

(继承自 ValidationAttribute)
TypeId

在派生类中实现时,获取此 Attribute 的唯一标识符。When implemented in a derived class, gets a unique identifier for this Attribute.

(继承自 Attribute)

方法

Equals(Object)

返回一个值,该值指示此实例是否与指定的对象相等。Returns a value that indicates whether this instance is equal to a specified object.

(继承自 Attribute)
FormatErrorMessage(String)

对在正则表达式验证失败的情况下要显示的错误消息进行格式设置。Formats the error message to display if the regular expression validation fails.

GetHashCode()

返回此实例的哈希代码。Returns the hash code for this instance.

(继承自 Attribute)
GetType()

获取当前实例的 TypeGets the Type of the current instance.

(继承自 Object)
GetValidationResult(Object, ValidationContext)

检查指定的值对于当前的验证特性是否有效。Checks whether the specified value is valid with respect to the current validation attribute.

(继承自 ValidationAttribute)
IsDefaultAttribute()

在派生类中重写时,指示此实例的值是否是派生类的默认值。When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class.

(继承自 Attribute)
IsValid(Object)

检查用户输入的值与正则表达式模式是否匹配。Checks whether the value entered by the user matches the regular expression pattern.

IsValid(Object, ValidationContext)

根据当前的验证特性来验证指定的值。Validates the specified value with respect to the current validation attribute.

(继承自 ValidationAttribute)
Match(Object)

当在派生类中重写时,返回一个指示此实例是否等于指定对象的值。When overridden in a derived class, returns a value that indicates whether this instance equals a specified object.

(继承自 Attribute)
MemberwiseClone()

创建当前 Object 的浅表副本。Creates a shallow copy of the current Object.

(继承自 Object)
ToString()

返回表示当前对象的字符串。Returns a string that represents the current object.

(继承自 Object)
Validate(Object, String)

验证指定的对象。Validates the specified object.

(继承自 ValidationAttribute)
Validate(Object, ValidationContext)

验证指定的对象。Validates the specified object.

(继承自 ValidationAttribute)

显式接口实现

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

将一组名称映射为对应的一组调度标识符。Maps a set of names to a corresponding set of dispatch identifiers.

(继承自 Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

检索对象的类型信息,然后可以使用该信息获取接口的类型信息。Retrieves the type information for an object, which can be used to get the type information for an interface.

(继承自 Attribute)
_Attribute.GetTypeInfoCount(UInt32)

检索对象提供的类型信息接口的数量(0 或 1)。Retrieves the number of type information interfaces that an object provides (either 0 or 1).

(继承自 Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

提供对某一对象公开的属性和方法的访问。Provides access to properties and methods exposed by an object.

(继承自 Attribute)

适用于