我们在我们的 mvc4 站点中使用 WebSecurity 进行帐户处理,并希望实现激活邮件的重新发送。
由于确认令牌在 24 小时后过期,我们希望在发送邮件之前生成一个新令牌。
有谁知道该怎么做?
WebSecurity.CreateUserAndAccount
仅适用于新帐户。
WebSecurity.GeneratePasswordResetToken
仅适用于已激活的帐户。
我们在我们的 mvc4 站点中使用 WebSecurity 进行帐户处理,并希望实现激活邮件的重新发送。
由于确认令牌在 24 小时后过期,我们希望在发送邮件之前生成一个新令牌。
有谁知道该怎么做?
WebSecurity.CreateUserAndAccount
仅适用于新帐户。
WebSecurity.GeneratePasswordResetToken
仅适用于已激活的帐户。
生成的确认令牌WebSecurity.CreateUserAndAccount
不会在 24 小时后过期,您可以通过以下代码获取它:
using(var db = new YourDbContext())
{
string query = "select ConfirmationToken from webpages_Membership where UserId = (select UserId from UserProfile where Email = '{0}')"
string token = db.Database.SqlQuery<string>(query, userEmail).FirstOrDefault();
}
您可以使查询成为内部联接以获得更好的性能
我认为你不应该使用WebSecurity.GeneratePasswordResetToken