基于MVC5中的Model层开发数据注解

ASP.NET MVC5中Model层开发,使用的数据注解有三个作用:

数据映射(把Model层的类用EntityFramework映射成对应的表)

数据验证(在服务器端和客户端验证数据的有效性)

数据显示(在View层显示相应的数据)

数据注解相关的命名空间如下:

System.ComponentModel.DataAnnotations

System.ComponentModel.DataAnnotations.Schema

System.Web.Mvc

System.Web.Security

DataAnnotations名称空间中包含主要的数据注解,Schema名称空间中包含一些数据映射的数据注解,Mvc名称空间中包含字符、数组、数值长度和属性比较的数据注解,Security名称空间中包含MemberShipPassword注解特性。

数据映射和验证相关的数据注解:

[Required]   必填字段  
[MaxLength]   指定属性中允许的数组或字符串数据的最大长度  
[MinLength]   指定属性中允许的数组或字符串数据的最小长度  
[StringLength]   指定最小和最大字符长度  
[Range]   指定数值范围  

数据验证相关的数据注解

[Remote]   使用 jQuery 验证插件远程验证程序的特性  
[FileExtension]   验证文件扩展名  
[Compare]   比较两个属性的值  
[RegularExpression]   使用正则表达式验证  
[CustomValidation]   自定义验证方法  
[DataType]   指定要与数据字段关联的附加类型的名称  
[EmailAddress]   电子邮件地址(相当于[DataType(DataType.Email)])  
[Phone]   电话(同上)  
[CreditCard]   信用卡号码(同上)  
[Url]   验证URL(同上)  
[MemberShipPassword]   验证密码字段是否满足成员资格提供程序的当前密码要求  

数据映射相关的数据注解:


  [Key]   主键字段
  [Column]   数据库列属性映射
  [NotMapped]   不要创建对应的字段
  [Table]   指定类将映射到的数据库表
  [ForeignKey]   表示关系中用作外键的属性
  [DatabaseGenerated]   指定数据库生成属性值的方式(EF不追踪属性的变化)

数据显示相关的数据注解:

[DisplayName]   指定本地化的字符串(习惯用语类)  
[Display]   指定本地化的字符串(习惯用语属性)  
[DisplayFormat]   设置数据字段的格式  
[ReadOnly]   指定该特性所绑定到的属性是只读属性还是读/写属性  
[EditAble]   指示数据字段是否可编辑  
[HiddenInput]   指示是否应将属性值或字段值呈现为隐藏的 input 元素  
[ScaffoldColumn]   指定类或数据列是否使用基架  
[UIHint]   指定动态数据用来显示数据字段的模板  

其他

[DisplayColumn]   将所引用的表中显示的列指定为外键列  
[Description]  

可视化设计器在引用组件成员时可以显示指定的说明

(命名空间:System.ComponentModel.DescriptionAttribute

 

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wdpyfs.html