Net Core:找不到类型或命名空间名称 'RoleProvider'
Net Core: Type or namespace name 'RoleProvider' could not be found
我正在将项目从 .Net 4.6.2 迁移到 .Net Core 2.0。 Net Core 中 RoleProvider 的替代品是什么?
找不到类型或命名空间名称 'RoleProvider'(是否缺少 using 指令或程序集引用?)
public class CustomerRoleProvider : RoleProvider
{
public override string CustomerName { get; set; }
public override void AddUsersToRoles(string[] usernames, string[] roleNames)
{
新代码如下所示,收到错误
Using the generic type 'RoleManager<TRole>' requires 1 type arguments
// Error first line: Using the generic type 'RoleManager<TRole>' requires 1 type arguments
public class CustomerRoleProvider : RoleManager
{
public string ApplicationName { get; set; }
public void CreateRole(IServiceProvider serviceProvider, string roleName)
{
var RoleManager = serviceProvider.GetRequiredService<RoleManager<IdentityRole>>();
throw new NotImplementedException();
}
更新:
John Kenney 的回答看起来很棒,希望有人可以在他的回答中添加更多内容作为编辑。
RoleProvider
在 .NET Core 中不存在,至少不以那种形式存在。
我相信您正在寻找的是RoleManager
。实现与以下非常相似:
var RoleManager = serviceProvider.GetRequiredService<RoleManager<IdentityRole>>();
var UserManager = serviceProvider.GetRequiredService<UserManager<ApplicationUser>>();
请参阅此 article 了解如何实施的详细信息。
我正在将项目从 .Net 4.6.2 迁移到 .Net Core 2.0。 Net Core 中 RoleProvider 的替代品是什么?
找不到类型或命名空间名称 'RoleProvider'(是否缺少 using 指令或程序集引用?)
public class CustomerRoleProvider : RoleProvider
{
public override string CustomerName { get; set; }
public override void AddUsersToRoles(string[] usernames, string[] roleNames)
{
新代码如下所示,收到错误
Using the generic type 'RoleManager<TRole>' requires 1 type arguments
// Error first line: Using the generic type 'RoleManager<TRole>' requires 1 type arguments
public class CustomerRoleProvider : RoleManager
{
public string ApplicationName { get; set; }
public void CreateRole(IServiceProvider serviceProvider, string roleName)
{
var RoleManager = serviceProvider.GetRequiredService<RoleManager<IdentityRole>>();
throw new NotImplementedException();
}
更新: John Kenney 的回答看起来很棒,希望有人可以在他的回答中添加更多内容作为编辑。
RoleProvider
在 .NET Core 中不存在,至少不以那种形式存在。
我相信您正在寻找的是RoleManager
。实现与以下非常相似:
var RoleManager = serviceProvider.GetRequiredService<RoleManager<IdentityRole>>();
var UserManager = serviceProvider.GetRequiredService<UserManager<ApplicationUser>>();
请参阅此 article 了解如何实施的详细信息。