【发布时间】:2025-12-05 01:40:01
【问题描述】:
使用 asp.net mvc5,我的用户管理系统似乎可以工作。我可以用谷歌或名字/密码登录..
但现在我正在开发一个用户管理界面,我需要能够在其中删除现有用户。这开始向我展示用户管理系统是多么令人困惑。与用户打交道有很多不同的方法......其中一些不起作用。
我读到的大多数地方都在谈论使用 Membership.DeleteUser()。
但这不起作用...
用户是用创建的。
var user = new ApplicationUser()
{
UserName = model.UserName,
Email = model.Email,
ConfirmationToken = confirmationToken,
IsConfirmed = false
};
var result = await UserManager.CreateAsync(user, model.Password);
现在稍后......我如何删除这样的用户? (给定它的名称或用户 ID)
我已经尝试了各种搜索中出现最多的内容.. 提出了会员资格作为解决方案。但这肯定不适合 MVC5? 例如
var allusers = Membership.GetAllUsers(); // allusers is empty
bool success = Membership.DeleteUser(model.name); // <-- success = false
我可以使用这种方法获得所有用户..
ApplicationDbContext db = new ApplicationDbContext();
foreach (var user in db.Users) { ... }
我可以找到一个个人用户......
ApplicationDbContext db = new ApplicationDbContext();
var um = new UserManager<ApplicationUser>(new UserStore<ApplicationUser>(db));
ApplicationUser user = um.FindById(model.userId);
现在我该如何删除一个呢? ....
【问题讨论】:
-
哦...然后按预期工作..在这个版本中。
-
所以 UserStore 可能是完成此任务的正确方法......稍后实现。就像是。 var um = new UserManager
(new UserStore (db)); var us = new UserStore (db); ApplicationUser 用户 = um.FindById(model.userId); us.DeleteAsync(user);
标签: c# asp.net asp.net-mvc-5