這篇文章給大家分享的是有關(guān)MVC5中Model層開發(fā)數(shù)據(jù)注解的示例分析的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
成都創(chuàng)新互聯(lián)公司專注于企業(yè)成都營銷網(wǎng)站建設、網(wǎng)站重做改版、柳林網(wǎng)站定制設計、自適應品牌網(wǎng)站建設、html5、商城網(wǎng)站制作、集團公司官網(wǎng)建設、外貿(mào)網(wǎng)站建設、高端網(wǎng)站制作、響應式網(wǎng)頁設計等建站業(yè)務,價格優(yōu)惠性價比高,為柳林等各大城市提供網(wǎng)站開發(fā)制作服務。
ASP.NET MVC5中Model層開發(fā),使用的數(shù)據(jù)注解有三個作用:
數(shù)據(jù)映射(把Model層的類用EntityFramework映射成對應的表)
數(shù)據(jù)驗證(在服務器端和客戶端驗證數(shù)據(jù)的有效性)
數(shù)據(jù)顯示(在View層顯示相應的數(shù)據(jù))
數(shù)據(jù)注解相關(guān)的命名空間如下:
System.ComponentModel.DataAnnotations
System.ComponentModel.DataAnnotations.Schema
System.Web.Mvc
System.Web.Security
DataAnnotations名稱空間中包含主要的數(shù)據(jù)注解,Schema名稱空間中包含一些數(shù)據(jù)映射的數(shù)據(jù)注解,Mvc名稱空間中包含字符、數(shù)組、數(shù)值長度和屬性比較的數(shù)據(jù)注解,Security名稱空間中包含MemberShipPassword注解特性。
數(shù)據(jù)映射和驗證相關(guān)的數(shù)據(jù)注解:
[Required] | 必填字段 |
[MaxLength] | 指定屬性中允許的數(shù)組或字符串數(shù)據(jù)的最大長度 |
[MinLength] | 指定屬性中允許的數(shù)組或字符串數(shù)據(jù)的最小長度 |
[StringLength] | 指定最小和最大字符長度 |
[Range] | 指定數(shù)值范圍 |
數(shù)據(jù)驗證相關(guān)的數(shù)據(jù)注解:
[Remote] | 使用 jQuery 驗證插件遠程驗證程序的特性 |
[FileExtension] | 驗證文件擴展名 |
[Compare] | 比較兩個屬性的值 |
[RegularExpression] | 使用正則表達式驗證 |
[CustomValidation] | 自定義驗證方法 |
[DataType] | 指定要與數(shù)據(jù)字段關(guān)聯(lián)的附加類型的名稱 |
[EmailAddress] | 電子郵件地址(相當于[DataType(DataType.Email)]) |
[Phone] | 電話(同上) |
[CreditCard] | 信用卡號碼(同上) |
[Url] | 驗證URL(同上) |
[MemberShipPassword] | 驗證密碼字段是否滿足成員資格提供程序的當前密碼要求 |
數(shù)據(jù)映射相關(guān)的數(shù)據(jù)注解:
[Key]主鍵字段[Column]數(shù)據(jù)庫列屬性映射[NotMapped]不要創(chuàng)建對應的字段[Table]指定類將映射到的數(shù)據(jù)庫表[ForeignKey]表示關(guān)系中用作外鍵的屬性[DatabaseGenerated]指定數(shù)據(jù)庫生成屬性值的方式(EF不追蹤屬性的變化)
數(shù)據(jù)顯示相關(guān)的數(shù)據(jù)注解:
[DisplayName] | 指定本地化的字符串(習慣用語類) |
[Display] | 指定本地化的字符串(習慣用語屬性) |
[DisplayFormat] | 設置數(shù)據(jù)字段的格式 |
[ReadOnly] | 指定該特性所綁定到的屬性是只讀屬性還是讀/寫屬性 |
[EditAble] | 指示數(shù)據(jù)字段是否可編輯 |
[HiddenInput] | 指示是否應將屬性值或字段值呈現(xiàn)為隱藏的 input 元素 |
[ScaffoldColumn] | 指定類或數(shù)據(jù)列是否使用基架 |
[UIHint] | 指定動態(tài)數(shù)據(jù)用來顯示數(shù)據(jù)字段的模板 |
其他
[DisplayColumn] | 將所引用的表中顯示的列指定為外鍵列 |
[Description] | 可視化設計器在引用組件成員時可以顯示指定的說明 (命名空間:System.ComponentModel.DescriptionAttribute) |
1、數(shù)據(jù)驗證相關(guān)的數(shù)據(jù)注解繼承ValidationAttribute類,都有一個ErrorMessage屬性用來顯示錯誤提示。
如:[Required(ErrorMessage="此項不能為空")]。
2、數(shù)據(jù)映射中Int類型和DateTime類型在數(shù)據(jù)庫中默認不允許為NULL,如果需要設置為NULL,使用可空類型即可(使用Int?或者DateTime?)。
感謝各位的閱讀!關(guān)于“MVC5中Model層開發(fā)數(shù)據(jù)注解的示例分析”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!