EntityFramework-DBFirst-重新生成后写的验证消失(解决办法)
1、这是EF生成的类:
namespace PMS.DataProvider.EntityFramework
{
using System;
using System.Collections.Generic; public partial class M_Managers
{
public string UserName { get; set; }
public string NickName { get; set; }
public string PassWord { get; set; }
public string HeadImg { get; set; }
public int Age { get; set; }
public bool IsMale { get; set; }
public string Email { get; set; }
public string Mobile { get; set; }
public string Address { get; set; }
public string Signature { get; set; }
public string Roles { get; set; }
public string Description { get; set; }
public System.DateTime CreateDate { get; set; }
public string CreateUser { get; set; }
public System.DateTime LastLoginDate { get; set; }
public int LoginTimes { get; set; }
}
}
2、新建一个部分(partial)类:
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks; namespace PMS.DataProvider.EntityFramework
{
[MetadataType(typeof(M_ManagersMetadata))]
public partial class M_Managers
{
//这里还可以添加“新增属性”
public string AdminTypeStr
{
get
{ if (AdminType == "SuperAdmin") { return "超级管理员"; } else { return "普通管理员"; } }
set { value = AdminType; }
}
} public class M_ManagersMetadata
{
[Display(Name = "用户名")]
[Required(ErrorMessage = "*")]
[StringLength(, ErrorMessage = "字符长度应在6-50之间", MinimumLength = )]
public string UserName { get; set; } [Display(Name = "显示名")]
[Required(ErrorMessage = "*")]
[StringLength(, ErrorMessage = "字符长度应在6-50之间", MinimumLength = )]
public string NickName { get; set; } [Display(Name = "密码")]
[Required(ErrorMessage = "*")]
[DataType(DataType.Password)]
[StringLength(, ErrorMessage = "字符长度应在6-50之间", MinimumLength = )]
public string PassWord { get; set; } [Display(Name = "头像")]
[DataType(DataType.ImageUrl)]
public string HeadImg { get; set; } [Display(Name = "年龄")]
[Range(, , ErrorMessage = "年龄应在10-120之间")]
public int Age { get; set; } [Display(Name = "性别")]
public bool IsMale { get; set; } [Display(Name = "邮箱")]
[Required(ErrorMessage = "*")]
[DataType(DataType.EmailAddress)]
[EmailAddress(ErrorMessage = "邮箱格式不正确")]
[StringLength(, ErrorMessage = "字符长度应在6-50之间", MinimumLength = )]
public string Email { get; set; } [Display(Name = "手机")]
[Required(ErrorMessage = "*")]
public string Mobile { get; set; } [Display(Name = "地址")]
public string Address { get; set; } [Display(Name = "签名")]
public string Signature { get; set; } [Display(Name = "角色")]
public string Roles { get; set; } [Display(Name = "描述")]
[DataType(DataType.MultilineText)]
public string Description { get; set; } [Display(Name = "创建日期")]
[DataType(DataType.DateTime, ErrorMessage = "日期格式不正确")]
public System.DateTime CreateDate { get; set; } [Display(Name = "创建人")]
public string CreateUser { get; set; } [Display(Name = "最后登录日期")]
[DataType(DataType.Date, ErrorMessage = "日期格式不正确")]
public System.DateTime LastLoginDate { get; set; } [Display(Name = "登录次数")]
public int LoginTimes { get; set; }
}
}
注意:
[MetadataType(typeof(M_ManagersMetadata))]//给新建的部分类指定要关联的元数据类
public partial class M_Managers//这是新建的部分类,注意要与EF生成的类一样,包括类名称和命名空间
{ } public class M_ManagersMetadata//新建一个元数据类
{
//这里写Model验证
[Display(Name = "用户名")]
[Required(ErrorMessage = "*")]
[StringLength(, ErrorMessage = "字符长度应在6-50之间", MinimumLength = )]
public string UserName { get; set; }
}
EntityFramework-DBFirst-重新生成后写的验证消失(解决办法)的更多相关文章
- WPF发布程序后未授予信任的解决办法
WPF发布程序后未授予信任的解决办法 基于浏览器的WPF应用程序由于需要比较高的操作权限,所以在项目的安全性属性中选择了“这是完全可信的应用程序”选项.可是,在发布部署后,在其他电脑上打开xbap文件 ...
- C# WebAPI中DateTime类型字段在使用微软自带的方法转json格式后默认含T的解决办法
原文:C# WebAPI中DateTime类型字段在使用微软自带的方法转json格式后默认含T的解决办法 本人新手,在.Net中写WebAPI的时候,当接口返回的json数据含有日期时间类型的字段时, ...
- Advanced Installer 打包后,安装包在WIN10下重启后再次运行安装的解决办法
原文:Advanced Installer 打包后,安装包在WIN10下重启后再次运行安装的解决办法 前几个月使用Advanced Installer 打包了一堆安装包,其中有使用默认主题的,也有根据 ...
- php history.back返回后表单数据丢失的解决办法
js使用history.back返回表单数据丢失的主要原因就是使用了session_start();的原因,该函数会强制当前页面不被缓存.本文章向码农介绍php history.back返回后表单数据 ...
- CentOS6重启后DNS被还原的解决办法
CentOS6重启后DNS被还原的解决办法 http://luyx30.blog.51cto.com/1029851/1070765/ centos6.5的64位系统,修改完/etc/sysconfi ...
- Eclipse中js文件修改后浏览器不能及时更新的解决办法
项目中js文件修改后浏览器不能及时更新的解决办法 转载:http://www.codeweblog.com/%E9%A1%B9%E7%9B%AE%E4%B8%ADjs%E6%96%87%E4%BB%B ...
- hadoop2.4.0伪分布式搭建以及分布式关机重启后datanode没起来的解决办法
1.准备Linux环境 1.0点击VMware快捷方式,右键打开文件所在位置 -> 双击vmnetcfg.exe -> VMnet1 host-only ->修改subnet ip ...
- 百度编辑器ueditor每次编辑后多一个空行的解决办法
用ueditor进行编辑文章时,每次编辑后文章前面都会多出一个空行. <script id="editor" type="text/plain" styl ...
- OGEngine_2.x中BitmapFont加载后黑屏问题的解决办法
在我使用OGEngine_2.x进行消灭圈圈(星星)游戏的实践的时候,使用BitmapFont对自定义字体进行调用. 原文字体教程如下:http://blog.csdn.net/OrangeGame/ ...
随机推荐
- eclipse创建多模块maven工程小结
创建maven工程步骤 1 新建一个maven工程,如下图所示: 2 选择项目名称(或项目目录),如下图所示: 3 填写maven工程相关信息,注意父maven工程的packing方式是pom,如下图 ...
- Android4.4 + WebAPI 实现拍照上传
网上有很多关于拍照上传的实现方法,如果用新版本android去运行有可能会发现根本实现不了.主要原因是android从4.4版本开始通过intent.ACTION_GET_CONTENT打开选择器后, ...
- Android_AsyncTask_DownloadImg_progressDIalog
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools=&q ...
- 如何让PHP支持Redis
原理:php默认扩展库不含有redis扩展:要支持redis扩展,需要有redis.so这个扩展文件 所以我们的目标就是生成redis.so扩展文件,并修改php.ini 让其支持redis扩展. 准 ...
- 深入理解计算机系统第二版习题解答CSAPP 2.10
对于任一位向量a,有a ^ a = 0.考虑下面的程序: void inplace_swap(int *x, int *y) { *y = *x ^ *y; *x = *x ^ *y; *y = *x ...
- Flume简介与使用(二)——Thrift Source采集数据
Flume简介与使用(二)——Thrift Source采集数据 继上一篇安装Flume后,本篇将介绍如何使用Thrift Source采集数据. Thrift是Google开发的用于跨语言RPC通信 ...
- 用expect做自动应答脚本
Expect是一个用来实现自动交互功能的软件套件 (Expect [is a] software suite for automating interactive tools).使用它系统管理员可以创 ...
- RPC之Thrift学习实战
关于Thrift的学习实战请参考:http://blog.csdn.net/column/details/slimina-thrift.html
- [记录] nicescroll 在bootstrap tabs中工作
Operlapping Nicescroll scrolbars in Bootstrap tabs 因为我的tab是指定id的 <!-- Nav tabs --> <ul clas ...
- InvoiceCancelSendApAction
package nc.ui.pu.m25.action; import java.awt.event.ActionEvent; import nc.bs.framework.common.NCLoca ...