首页 新闻 搜索 专区 学院

EF自动生成的Entity类,如何在{set;}里面加入自己的内容

0
悬赏园豆:100 [已关闭问题]

最近用SL+ria service+entity framework练习项目,在用户注册的部分做check,有个password confirm(密码确认)的输入,按照当前的validation方式,采用给entity的字段添加属性[attribute]的方式,如:[Required]。于是自己给User的entity里添加了passwordConfirm字段,并在set的时候判断,如果与password不一致,则添加validationError。

partial user entity
public partial class sysUser : Entity
{
private string passwordConfirm;

[Required(ErrorMessage
="请输入确认密码")]
public string PasswordConfirm
{
get { return this.passwordConfirm; }

set
{
if (this.passwordConfirm != value)
{
// 告诉Framework,一个entity将要发生改变
this.RaiseDataMemberChanging("PasswordConfirm");
// 验证给字段指定的属性[Attribute]
this.ValidateProperty("PasswordConfirm", value);
// 赋值,发生改变!
this.passwordConfirm = value;
// 告诉Framework,一个entity发生了改变
this.RaiseDataMemberChanged("PasswordConfirm");

// If the values are different, then add a validation error with both members specified
if (!string.IsNullOrWhiteSpace(this.Password) && this.Password != this.PasswordConfirm)
{
this.ValidationErrors.Add(new ValidationResult("密码不一致!", new string[] { "PasswordConfirm", "Password" }));
}
}
}
}
}

 

现在的问题是Password这个字段是自动生成的set和get,如果在set里面添加了自己的判断内容,则在下次从数据库生成entity的时候,会覆盖掉自己的内容,请问,如何才能给Password的set部分添加上如PasswordConfirm一样的Validation?

starStars的主页 starStars | 初学一级 | 园豆:52
提问于:2010-04-30 14:03
< >
分享
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册