我想请一些帮助来弄清楚我的登录页面发生了什么。
我有一个由EF
生成的名为 User.cs 的班级public partial class User
{
public User()
{
this.PersonnelInfo = new HashSet<PersonnelInfo>();
}
public int UserId { get; set; }
public string Username { get; set; }
public string Password { get; set; }
public int RoleId { get; set; }
public int AccountId { get; set; }
public virtual ICollection<PersonnelInfo> PersonnelInfo { get; set; }
public virtual Role Role { get; set; }
public virtual Account Account { get; set; }
}
要为这些属性添加验证,我添加了一个名为 UserMd.cs 的新类
[MetadataType(typeof(UserMetadata))]
public partial class User
{
}
public class UserMetadata
{
public int UserId { get; set; }
[Display(Name = "Username")]
[Required(ErrorMessage = "Username is required.")]
public string Username { get; set; }
[Display(Name = "Password")]
[Required(ErrorMessage = "Password is required.")]
[DataType(DataType.Password)]
public string Password { get; set; }
[Display(Name = "Role")]
[Required(ErrorMessage = "Role is required.")]
public int RoleId { get; set; }
[Display(Name = "Client ID")]
[Required(ErrorMessage = "Client ID is required.")]
public int AccountId { get; set; }
public virtual ICollection<PersonnelInfo> PersonnelInfo { get; set; }
public virtual Role Role { get; set; }
public virtual Account Account { get; set; }
}
我想要做的是扩展我的User类属性并基于我的研究我可以通过添加额外的分部类来扩展我的User类,所以我创建 UserPropertyExtended.cs
public partial class User
{
[DataType(DataType.Password)]
[Display(Name = "Confirm password")]
[Compare("Password", ErrorMessage = "The password and confirmation do not match.")]
public string ConfirmPassword { get; set; }
}
我向 ConfirmPassword 属性添加验证时出现问题。 我无法登录我的应用程序。 如果我删除验证一切都很好。
我不想在我的表格中添加另一列,这就是我扩展用户类的原因。
希望你能帮助我。
谢谢。