【发布时间】:2011-07-29 21:28:31
【问题描述】:
我正在我的应用程序 Asp.net MVC 3 中自定义一种用户验证形式。
如何实现方法ValidateUser?
我的问题是MembershipUser 类(我也自定义)的密码有一个密码属性。
我正在使用 EF CodeFirst .. 以下代码:
会员用户
public class User : MembershipUser
{
public User(string username, object providerUserKey, string email, string passwordQuestion, bool isApproved,
bool isLockedOut)
: base("", username, providerUserKey, email, passwordQuestion, "", isApproved, isLockedOut, DateTime.Now, DateTime.MinValue,
DateTime.Now, DateTime.MinValue, DateTime.MinValue)
{
}
}
MembershipProvider
public class UserProvider : MembershipProvider
{
public override bool ValidateUser(string email, string password)
{
var bytes = new ASCIIEncoding().GetBytes(password);
var encryptedPassword = EncryptPassword(bytes);
using (var db = new DataContext())
{
var user = from u in db.Users
where u.Email == email
/* How to compare password? */
}
}
}
请问有没有完整的文章介绍了这个类的实现?
【问题讨论】:
-
你能在你将用户添加到数据库的地方添加代码吗?
标签: asp.net-mvc-3 razor forms-authentication membership-provider custom-membershipprovider