c# - 如何从旧的 asp.net 成员资格创建用户到新的 MVC .net 并发送密码重置

标签 c# asp.net asp.net-mvc azure

抱歉,如果这听起来很菜鸟——我是一个业余爱好者: 我在 azure sql DB 上有一个较旧的 asp.net (vb) 表单成员资格,该成员资格是使用 Visual Studio 2012 模板中的代码优先选项制作的(实体版本 6,如果有帮助的话)。我想过渡到 MVC。 C# MVC 项目的模板与 azure 配合得非常好,并且我的开放身份验证工作正常,但我不知道如何让我的老用户成为新成员。 DB 字段看起来完全不同(MCV 只有几个表,看起来更直接,而 VS2012 中的旧版 asp.net 有多个表、密码盐等。我有大约 500 个用户,所以手动操作听起来很糟糕。我尝试复制测试用户的电子邮件,然后尝试重置密码 - 它作为密码重置电子邮件发送,但随后在到达密码重置 View 时给出“发生错误”,猜测是因为用户从未设置有问题向上。 那么,有没有办法过渡到新的成员(member)制呢?我可能会弄清楚如何运行一些脚本来从电子邮件列表中创建一群用户,但如何让每个用户同时通过电子邮件发送重置链接。这里的任何指导都会有帮助,谢谢

最佳答案

我要做的是使用旧用户的电子邮件在 MVC 站点中创建新用户。您可以通过多种方式来做到这一点,要么编写一些快速的数据库代码来读取电子邮件地址,导出到文本文件并读取文本文件,或者只是硬编码一个包含所有地址的数组。

然后使用循环将每个用户添加为新用户,以便您将它们正确地添加到系统中,然后对每个新帐户运行密码重置,以便用户可以设置新密码。

类似这样的事情:

//loop for each email address from old DB

var user = new ApplicationUser { UserName = _email, Email = _email };
var result = await UserManager.CreateAsync(user, "TempPass123!");
if (result.Succeeded)
{
 //reset the password
}

查看这篇文章以获得一些指导:Create a secure ASP.NET MVC 5 web app with log in, email confirmation and password reset

关于c# - 如何从旧的 asp.net 成员资格创建用户到新的 MVC .net 并发送密码重置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27872371/

相关文章:

html - 如何在 Bootstrap 模板中使用表单控件类?

mysql - 在使用 Entity Framework Code First 和 mysql 时强制 engine=innodb

c# 正则表达式,只允许数字和字母不起作用

c# - 混合预计算和延迟加载

C# 1 套接字客户端连续数据

c# - 更高效的半正弦函数

javascript - 如何使用离线Jquery?

c# - 无法从使用自定义运行时在 Docker 中运行 .NET Core 应用程序的 App Engine 连接到 Google Cloud SQL 中的 postgres

asp.net - <httpRuntime requestValidationMode ="2.0"/>不起作用(使用IIS 6.0)

asp.net-mvc - 我们如何在解决方案资源管理器中检查 MVC View 是否是部分 View