我想扩展UserManager以允许通过用户名查找用户。我创建了一个扩展方法。我注意到实现它的最简单方法是获取UserStore. 我不能这样做,UserManager因为Store受到保护。我决定使用 DI 注入UserStore我的方法,但我什至不确定它是否可能。我试图作为第二个参数通过,IUserStore<T> store但 VS 说没有给出任何参数。using System.Threading;using System.Threading.Tasks;using Microsoft.AspNetCore.Identity;namespace Learning.Extensions{ public static class UserManagerExtension { public static Task<T> FindByUserNameAsync<T>(this UserManager<T> userManager, IUserStore<T> store, string userName) where T : class { var result = store.FindByNameAsync(userName, CancellationToken.None); return result; } }}
1 回答

九州编程
TA贡献1785条经验 获得超4个赞
您可以使用现有方法按名称搜索用户:
public Task<TUser> UserManager<TUser>.FindByNameAsync(String);
可以在ASP.NET Core 文档中找到更多信息。
- 1 回答
- 0 关注
- 88 浏览
添加回答
举报
0/150
提交
取消