扩展EF生成的User类后无法登录

时间:2014-10-01 10:46:05

标签: c# asp.net-mvc asp.net-mvc-4 entity-framework-5



我想请一些帮助来弄清楚我的登录页面发生了什么。

我有一个由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 属性添加验证时出现问题。 我无法登录我的应用程序。 如果我删除验证一切都很好。

我不想在我的表格中添加另一列,这就是我扩展用户类的原因。

希望你能帮助我。

谢谢。

0 个答案:

没有答案