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

由于确认 token 在 24 小时后过期,我们希望在发送邮件之前生成一个新 token 。

有谁知道怎么做?
WebSecurity.CreateUserAndAccount 仅适用于新帐户。WebSecurity.GeneratePasswordResetToken 仅适用于已激活的帐户。

最佳答案

WebSecurity.CreateUserAndAccount 生成的确认 token 不会在 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

关于c# - asp.net mvc4 生成新的账户确认 token ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18782496/

10-11 19:19