model
里边设置主键 : [key]可以自定义主键 默认是名称为ID类型为int的字段
设置显示格式: [DisplayFormat(DataFormatString="{0:显示的格式}",[可选参数])
设置字段显示内容 [Display(Name = "要显示的内容") ] 例:
[Display(Name = "发布日期") ] public DateTime ReleaseDate { get; set; }
前台默认将会显示 发布日期 在该字段的标题栏上
[Required]//不允许为空 [StringLength(60,MinimumLength = 5)]//设置长度为5-60 [Range(1,100)]//设置输入的范围且限定了输入的数据为数字 [DataType(DataType.Currency)]//限定了输入的数据为货币类型的 这里的参数datatype里边放的是个枚举值当然也可以自己定义
[RegularExpression(@"^[A-Z]+[a-zA-Z''-'s]*$")]//这里放的是正则表达式 [DatabaseGenerated(DatabaseGeneratedOption.Identity)] //这里放的是对数据库的操纵方式,可以让系统生成,也可以自己在前台填写
在View中的*.cshtml页面取消验证用
asp-validation-summary="TypeName" 只要把这个属性给取消就可以了
在Controller中
[ValidateAntiForgeryToken]//声明验证有效性 用 if (ModelState.IsValid){ //Something }进行有效性的验证
在control中出现命名冲突时解决方法有一下两个方法
1. 给函数添加
[ActionName("名字")]
这种方法有弊端,就是在前台通过ActionName对Action进行访问时,无法直接定位到这个Action
2.更改函数的签名,添加一个没用的参数