【问题标题】:is it possible to delete row from default table AspNetUsers ? if yes please explain是否可以从默认表 AspNetUsers 中删除行?如果是,请解释
【发布时间】:2016-01-05 23:47:09
【问题描述】:

是否可以从默认表 AspNetUsers 中删除行?如果是,请解释。

我能够删除具有 AspNetUsers 的 Fk 的记录。

public ActionResult Delete(STUDENT st)
{
var studentuser = st.user;
st.user = null;
db.Entry(st).State = EntityState.Deleted;
db.SaveChanges();// 从 db 中删除成功
var userid = User.Identity.GetUserId();
var user = _userManager.FindById(userid);
_userManager.DeleteAsync(user);
return RedirectToAction("Index", "Admin");
}

【问题讨论】:

    标签: c# asp.net asp.net-mvc entity-framework ef-code-first


    【解决方案1】:

    这是我之前用来删除用户的代码 sn-p

    // Find the user
    var user = await _userManager.FindByIdAsync(id);
    var logins = user.Logins;
    
    // Delete every login, if he has
    foreach (var login in logins.ToList())
    {
      await _userManager.RemoveLoginAsync(login.UserId, new UserLoginInfo(login.LoginProvider, login.ProviderKey));
    }
    
    // Delete every role, if he has
    var rolesForUser = await _userManager.GetRolesAsync(id);
    if (rolesForUser.Count() > 0)
    {
        foreach (var item in rolesForUser.ToList())
        {
           // item should be the name of the role
           var result = await _userManager.RemoveFromRoleAsync(user.Id, item);
        }
    }
    
    // Delete the user itself
    _await _userManager.DeleteAsync(user);
    

    【讨论】:

    • :( 我正在使用我的自定义控制器
    • @VishalPatidar 那么您将不得不更具体地了解您的问题。 Jelle 为您的要求提供了解决方案。
    • 我更新了我的问题......对不起,我是初学者,所以也无法解释我的问题
    • 你能用代码解释一下这里的“id”是什么...我通过 User.Identity.GetUserId();但它不起作用
    • id是用户id,从视图中调用@html.actionlink("Delete", new { id = user.id})..像这样...
    【解决方案2】:

    是的。 但首先,您必须先从用户中删除所有现有角色,然后再将其删除。

    例子:Roles.RemoveUserFromRoles("userName",Roles.GetRolesForUser("userName"));

    有类似问题的链接:how-to-delete-a-simplemembership-user

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-01-22
      • 2021-04-08
      • 1970-01-01
      • 2023-03-16
      • 1970-01-01
      • 2010-10-10
      • 1970-01-01
      相关资源
      最近更新 更多