RequiredAttribute 類別

定義

指定需要一個資料欄位值。

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

範例

以下範例使用屬性 RequiredAttribute 來覆寫允許資料欄位為空的資料庫結構規則。 範例執行以下步驟:

  • 實作一個元資料部分類別及其相關的元資料類別。

  • 在相關的元資料類別中,它套用 RequiredAttribute 屬性,該屬性指定以下需求:

    • 標題資料欄位不能是空的。 若驗證失敗,範例中的程式碼會拋出驗證例外並顯示錯誤訊息。 錯誤訊息是在屬性套用到資料欄位時指定。

    • MiddleName 資料欄位不能為空。 若驗證失敗,範例中的程式碼會拋出驗證例外並顯示錯誤訊息。

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

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

public class CustomerMetaData
{
    // Require that the Title is not null.
    // Use custom validation error.
    [Required(ErrorMessage = "Title is required.")]
    public object Title;
    
    // Require that the MiddleName is not null.
    // Use standard validation error.
    [Required()]
    public object MiddleName;
}
Imports System.Web.DynamicData
Imports System.ComponentModel.DataAnnotations
Imports System.Globalization

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

   
End Class

Public Class CustomerMetaData
    ' Require that the Title is not null.
    ' Use custom validation error.
    <Required(ErrorMessage:="Title is required.")> _
    Public Title As Object

    ' Require that the MiddleName is not null.
    ' Use standard validation error.
    <Required()> _
    Public MiddleName As Object

End Class

備註

屬性 RequiredAttribute 指定當表單上的欄位被驗證時,該欄位必須包含一個值。 若屬性為 null,且包含空字串(“”),或僅包含空白字元,則會觸發驗證例外。

Note

如果 MVC 資料模型或實體部分類別包含一個標註了屬性 RequiredAttribute 的欄位,但頁面中沒有該屬性,則不會產生錯誤。 驗證僅對提交給伺服器的欄位進行。

建構函式

名稱 Description
RequiredAttribute()

初始化 RequiredAttribute 類別的新執行個體。

屬性

名稱 Description
AllowEmptyStrings

取得或設定一個值,指示是否允許空字串。

ErrorMessage

若驗證失敗,會接收或設定錯誤訊息以關聯驗證控制項。

(繼承來源 ValidationAttribute)
ErrorMessageResourceName

取得或設定錯誤訊息資源名稱,以便在驗證失敗時查詢 ErrorMessageResourceType 屬性值。

(繼承來源 ValidationAttribute)
ErrorMessageResourceType

取得或設定資源類型,以便在驗證失敗時用於錯誤訊息查詢。

(繼承來源 ValidationAttribute)
ErrorMessageString

會收到本地化驗證錯誤訊息。

(繼承來源 ValidationAttribute)
RequiresValidationContext

會得到一個值,表示該屬性是否需要驗證上下文。

(繼承來源 ValidationAttribute)
TypeId

在衍生類別中實作時,取得這個 Attribute的唯一標識碼。

(繼承來源 Attribute)

方法

名稱 Description
Equals(Object)

傳回值,這個值表示這個實例是否等於指定的物件。

(繼承來源 Attribute)
FormatErrorMessage(String)

根據錯誤發生的資料欄位,對錯誤訊息套用格式化。

(繼承來源 ValidationAttribute)
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)

明確介面實作

名稱 Description
_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)

適用於