0

Ich versuche, dem ASP.NET Core Identity-System eine neue Rolle hinzuzufügen. Aber bisher kein Glück.Neue IdentityRole hinzufügen

Code: C#

using Microsoft.AspNetCore.Identity; 
using Microsoft.AspNetCore.Identity.EntityFrameworkCore; 

private ApplicationDbContext _context; 

var roleStore = new RoleStore<IdentityRole>(_context); 
var roleManager = new RoleManager<IdentityRole>(roleStore); // <============ Problem 
await roleManager.CreateAsync(new IdentityRole("Somevalue")); 

Fehlermeldung:

Fehler CS7036 Es gibt kein Argument gegeben, die auf die erforderlichen formalen Parameter 'roleValidators' von ‚RoleManager.RoleManager entspricht (IRoleStore, IEnumerable>, ILookupNormalizer, IdentityErrorDescriber, ILogger>, IHttpContextAccessor) '

gleiche Code in .net 4.6 VB.net arbeitet

Dim roleManager = New RoleManager(Of IdentityRole)(New RoleStore(Of IdentityRole)) 
    Dim newRoleName As String = "Some groupname" 

    If Not roleManager.RoleExists(newRoleName) Then 

     Dim role = New IdentityRole() 

     role.Name = newRoleName 
     roleManager.Create(role) 

    End If 
+0

Könnten Sie Ihre 'Startup.cs' Code-bezogene Aspnet-Identität posten? –

Antwort

0

Es scheint, dass Sie versuchen, ohne Dependency Injection aspnet Identität zu verwenden. Siehe official docs zum Konfigurieren der Identität mit dem Aspnet-Core.