生成身份(代码优先)表,而无需添加用户记录

时间:2018-08-20 17:24:08

标签: c# asp.net-identity

我已经在我们的应用程序中实现了身份。我有一个register.aspx页面,如果该表不存在,它将在DB中生成所有必要的标识表。完善。我现在正在将该实现转移到生产中。我需要生成这些新的Identity表,而无需在表中添加任何新的记录/用户。这是因为我需要将所有旧用户记录完全(使用现有的主键)迁移到新的标识表中。

使用Identity框架,有没有一种方法可以执行此表创建?当前,这是将为我生成表的代码,但是就像我说的那样,这也向表中添加了一个新用户,而我试图避免这种情况:

var context = HttpContext.Current.GetOwinContext().Get<MyIdentity.ApplicationDbContext>();

// Default UserStore constructor uses the default connection string named: DefaultConnection
var userStore = new MyIdentity.UserStore<MyIdentity.ApplicationUser>(context);
var manager = new MyIdentity.ApplicationUserManager(userStore);
var user = new MyIdentity.ApplicationUser() { UserName = UserName.Text,
                                                         Email = Email.Text};

IdentityResult result = manager.Create(user, Password.Text);

if (result.Succeeded)
{
    var authenticationManager = HttpContext.Current.GetOwinContext().Authentication;
    var userIdentity = manager.CreateIdentity(user, CookieAuthenticationDefaults.AuthenticationType);
    authenticationManager.SignIn(new AuthenticationProperties() { }, userIdentity);
    Response.Redirect("~/Login.aspx");
}
else
{
    StatusMessage.Text = result.Errors.FirstOrDefault();
}

任何帮助都会很棒。谢谢

0 个答案:

没有答案