MVC中的驗證功能
驗證步驟:1.定義驗證規則–>2.應用驗證規則–>3.顯示驗證結果
使用特性定義驗證規則
ASP.NET MVC驗證特性
- 支持對模型應用驗證規則
- 位於System.ComponentModel.DataAnnotations命名空間中
- 都繼承自VaildationAtrribute類,該類的一個基本屬性ErrorMessage用來定義消息屬性
驗證特性 | 功能 |
---|---|
Requried | 必填項 |
Compare | 比較驗證:驗證兩個值是否一致 |
StringLength | 字符串長度驗證(可以設置最大長度、最小長度) |
Range | 用於數字(整數、浮點)、時間等類型數據範圍驗證 |
RegularExpression | 正則表達式驗證 |
ModelState對象
表單與模型驗證的關係
- 在模型類中定義驗證規則後,ASP.NET MVC在將數據映射到模型時,會自動應用模型類上的驗證規則
- 驗證過程中,會自動把驗證錯誤信息添加到ModelState數據字典中
表單數據的容器<----ModelState---->驗證結果的容器
ModelState常用成員
成員 | 功能 |
---|---|
IsValid | 判斷模型上所有的驗證是否通過 |
AddModelError(Key.Value) | 添加自定義的錯誤信息 |
在視圖中顯示驗證信息
- 理論上可以使用ModelState對象來輸出驗證信息,但是比較繁瑣
- 實際中,使用Html對象的兩個幫助方法來輸出驗證信息