asp.net mvc4生成新的帐户确认令牌

时间:2013-09-13 09:10:54

标签: c# asp.net asp.net-mvc asp.net-mvc-4

我们正在使用WebSecurity在我们的mvc4站点中进行帐户处理,并希望实现重新激活邮件的重新发送。

由于确认令牌在24小时后到期,我们希望在发送邮件之前生成新令牌。

任何人都知道该怎么做?

WebSecurity.CreateUserAndAccount仅适用于新帐户。 WebSecurity.GeneratePasswordResetToken仅适用于已启用的帐户。

1 个答案:

答案 0 :(得分:6)

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