使用标识

时间:2015-10-21 14:15:15

标签: c# asp.net-mvc-5 entity-framework-6 asp.net-identity

我正在使用MVC5身份与Entity Framework DB First。我对MVC5身份完全不熟悉。

我想使用管理员为用户注册的注册表。 因此,管理员不应该注销,也想创建新用户。 不使用RegisterViewModel和帐户控制器就可以使用新的注册表单。

想要在AspNetUser表中添加值以及我自己的与用户相关的表。

我尝试以不同的形式保存AspNetUser表中的记录,但它会自动注销,或者只是在我尝试保存在同一功能中具有相同记录的另一个表时挂起,有时它会卡住,它不会显示错误或任何meesage

 var user = new ApplicationUser() { UserName = model.UserName };
 var result = await UserManager.CreateAsync(user, model.Password);
 if (result.Succeeded){
model.userid=user.Id;
db.Users.Add(modal);
db.SaveChanges();
}

我没有使用这一行:

await SignInAsync(user, isPersistent: false);

目前我无法提供完整的代码,只需考虑上面几行的相似内容...... 记录不会添加到用户表中,但会在AspNetUser表中正确添加。

方法有误吗?

2 个答案:

答案 0 :(得分:0)

在你没有展示的代码中有很多可能出错的地方。我相信你有一些IUserStore和IRoleStore的实现,并在Startup.ConfigureAuth方法中创建它?您不必使用该模型,但您必须创建SignInManager,UserManager和RoleManager并将它们放在上下文中,否则您可能会遇到问题。

您可能需要查看自定义提供程序以了解所需内容:

Overview of Custom Storage Providers for AspNet Identity

答案 1 :(得分:0)

因为,我已经在.cshtml页面中提交了没有html开始表单的表单,所以它从布局的登录部分查看页面提交了注销开始表单