将具有临时密码的现有用户插入.NET标识

时间:2014-12-13 11:45:46

标签: asp.net-mvc

我有一个使用.NET Identity 2.0的MVC 5应用程序。我需要从客户端遗留数据库迁移用户。我将使用INSERT语句将它们插入SQL Server表(ASPNetUsers,ASPNetUserROles等)。

问题是我想插入一个临时密码(名字+姓氏)。然后我将分别向他们发送一封电子邮件,要求他们登录并在第一次登录时更改密码。

如何通过SQL Insert语句将散列密码(基于firstname + lastname)插入表中?

谢谢,

Sanjeev

1 个答案:

答案 0 :(得分:0)

写下以下代码。它似乎工作。第一部分使用UserManager方法,第二部分将人员插入到我自己的数据库表中。

如果这是正确的方法,请评论!

    public ActionResult Seed()
    {
        string lastname;
        string firstname;
        string email;
        string password;

        lastname = "LastNAme";
        firstname = "FirstName";
        email = "Email@gmail.com";
        password = "TempPassword";

        var user = new ApplicationUser { UserName = email, Email = email };
        var result = UserManager.Create(user, password);
        UserManager.AddToRole(user.Id, "User");
        var person = new Person()
        {
            UserName = user.UserName,
            UserId = user.Id,
            LastName = lastname,
            FirstName = firstname,
            Email = email
        };
        db.People.Add(person);
        db.SaveChanges();

}