5
我正在玩EF Code First,现在在实现自定义MembershipProvider时遇到了麻烦。MembershipUser和Entity Framework代码优先
对于EF代码首先,我创建了自己的用户类是这样的:
public class User
{
[Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int ID { get; set; }
[Required]
public string UserName { get; set; }
[Required]
public string Password { get; set; }
[Required]
public string Email { get; set; }
[Required]
public bool IsApproved { get; set; }
public DateTime? LastLoginDate { get; set; }
public DateTime? LastActivityDate { get; set; }
[Required]
public DateTime CreationDate { get; set; }
[Required]
public string ApplicationName { get; set; }
}
我也实现我的EF已经定制的MembershipProvider的一些功能,但其中一些现在需要MembershipUser
无论是作为参数或返回值。
public MembershipUser GetUser(string username, bool userIsOnline)
我首先想到的是从MembershipUser
继承我的User类,但我会失去对性的控制。这甚至可以和EF Code First一起工作吗?
另一种想法是为我的用户类创建一个ToMembershipUser()方法。这是一个选择吗?我需要考虑什么?
处理这个问题的最佳方法是什么?
这似乎很好地工作,谢谢! – magnattic
我从'MembershipUser'继承了我的'CustomUser',当使用Entity Framework将'CustomUser'保存到数据库时出现问题。如果有人要使用SQL代码,以下是自定义MembershipUser的正式操作方法[如何实现自定义成员身份用户](http://msdn.microsoft.com/zh-cn/library/ms366730.aspx) – twnaing
不要忘记用'[NotMapped]'数据注释来注释'CusomUser'类。否则,你会得到'CustomUser'没有唯一键的错误。 – twnaing