我设计一个新网站,ASP.NET MVC 4(测试版),VS 11(测试版),EF 5(测试版),但这个问题西服ASP的发行版本.NET MVC 3,VS 2010,EF 4。资料验证模型/视图模型/实体框架代码优先
第一步:我使用实体框架代码优先的方法,例如,我有以下的用户模型:现在
public class User
{
[Key]
public int UserId {get;set;}
public String LoginName { get; set; }
public String Password { get; set; }
}
,注册,我需要另一种模式,注册模式:
public class Registration
{
public String LoginName { get; set; }
public String Password { get; set; }
public String PasswordConfirm { get; set; }
}
这是我的问题开始:我应该在哪里把我的资料验证注解?例如,密码长度不得超过10个字符,并且PasswordConfirmed必须与密码匹配等。我必须写在每一个模型,它可以做密码的东西(我想有ChangePassword模型,太)
的另一件事是如何处理的控制器。当我显示我的Registration ViewModel并且一切正常时,我是否创建一个User模型并将Registration ViewModel中的变量赋值给它?
有时候,我有很多哪去了数据库的性能,但不向用户显示(外键的计算值,等等)。
因为想干DRY,我不想重复我的自我。
这个最好的做法是什么?
需要明确的是:注解是不是需要。如果有更好的方法来验证,我会很高兴,如果你给他们看。
嗯,我不需要注释。我也可以使用其他的做法 –