RegularExpressionAttribute 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
指定 ASP.NET Dynamic Data 中的資料欄位值必須符合指定的規則運算式 (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
[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
[<System.AttributeUsage(System.AttributeTargets.Field | System.AttributeTargets.Property, AllowMultiple=false)>]
type RegularExpressionAttribute = class
inherit ValidationAttribute
Public Class RegularExpressionAttribute
Inherits ValidationAttribute
- 繼承
- 屬性
範例
下列範例示範如何使用 RegularExpressionAttribute 屬性來驗證 FirstName 和 LastName 數據欄位。 正則表達式最多允許 40 個大寫和小寫字元。 此範例會執行下列工作:
實作元數據部分類別和相關聯的元數據類別。
在相關聯的元數據類別中,將 RegularExpressionAttribute 屬性套用至 FirstName 和 LastName 數據欄位,並指定模式和自定義錯誤訊息。
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 屬性套用至屬性。 正則表達式可讓您非常精確地指定有效值的格式。 Pattern 屬性包含正則表達式。 如果屬性值為 null 或空字串 (“”) ,則此值會自動通過 RegularExpressionAttribute 屬性的驗證。 若要驗證值不是 null
或空字串,請使用 RequiredAttribute 屬性。
正則表達式會搜尋完全相符專案,而不是在模式結尾使用 ^
, $
會產生與使用它相同的結果。 如需搜尋點擊,請在 前面加上 ,並使用 附加模式 .*
。
建構函式
RegularExpressionAttribute(String) |
初始化 RegularExpressionAttribute 類別的新執行個體。 |
屬性
ErrorMessage |
取得或設定錯誤訊息,此錯誤訊息會在驗證失敗時與驗證控制項產生關聯。 (繼承來源 ValidationAttribute) |
ErrorMessageResourceName |
取得或設定要在驗證失敗時用來查閱 ErrorMessageResourceType 屬性值的錯誤訊息資源名稱。 (繼承來源 ValidationAttribute) |
ErrorMessageResourceType |
取得或設定資源類型,此類型可在驗證失敗時用於查閱錯誤訊息。 (繼承來源 ValidationAttribute) |
ErrorMessageString |
取得當地語系化的驗證錯誤訊息。 (繼承來源 ValidationAttribute) |
MatchTimeout |
取得比對正則表示式模式時要使用的逾時 |
MatchTimeoutInMilliseconds |
取得或設定執行單一比對作業,直到作業逾時之前的時間量 (以毫秒為單位)。 |
Pattern |
取得規則運算式模式。 |
RequiresValidationContext |
取得值,這個值表示屬性是否需要驗證內容。 (繼承來源 ValidationAttribute) |
TypeId |
在衍生類別中實作時,取得這個 Attribute 的唯一識別碼。 (繼承來源 Attribute) |
方法
Equals(Object) |
傳回值,這個值指出此執行個體是否與指定的物件相等。 (繼承來源 Attribute) |
FormatErrorMessage(String) |
格式化要在規則運算式驗證失敗時顯示的錯誤訊息。 |
GetHashCode() |
傳回這個執行個體的雜湊碼。 (繼承來源 Attribute) |
GetType() |
取得目前執行個體的 Type。 (繼承來源 Object) |
GetValidationResult(Object, ValidationContext) |
檢查指定的值在目前的驗證屬性方面是否有效。 (繼承來源 ValidationAttribute) |
IsDefaultAttribute() |
在衍生類別中覆寫時,表示這個執行個體的值是衍生類別的預設值。 (繼承來源 Attribute) |
IsValid(Object) |
檢查使用者輸入的值是否符合規則運算式模式。 |
IsValid(Object, ValidationContext) |
根據目前的驗證屬性,驗證指定的值。 (繼承來源 ValidationAttribute) |
Match(Object) |
在衍生類別中覆寫時,會傳回值,表示這個執行個體是否等於指定物件。 (繼承來源 Attribute) |
MemberwiseClone() |
建立目前 Object 的淺層複製。 (繼承來源 Object) |
ToString() |
傳回代表目前物件的字串。 (繼承來源 Object) |
Validate(Object, String) |
驗證指定的物件。 (繼承來源 ValidationAttribute) |
Validate(Object, ValidationContext) |
驗證指定的物件。 (繼承來源 ValidationAttribute) |
明確介面實作
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
將一組名稱對應至一組對應的分派識別項 (Dispatch Identifier)。 (繼承來源 Attribute) |
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
擷取物件的類型資訊,可以用來取得介面的類型資訊。 (繼承來源 Attribute) |
_Attribute.GetTypeInfoCount(UInt32) |
擷取物件提供的類型資訊介面數目 (0 或 1)。 (繼承來源 Attribute) |
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
提供物件所公開的屬性和方法的存取權。 (繼承來源 Attribute) |