2014-04-20 12 views
10

Ich habe Probleme beim Verständnis der neuen Identitätskram. Ich versuche herauszufinden, wie neue Rollen hinzugefügt werden und Benutzer diesen Rollen hinzufügen. Ich versuche eine Rollenverwaltungsseite und eine Benutzerverwaltungsseite für meine Anwendung zu erstellen und muss diese beiden Dinge tun können. Jedes Mal, wenn ich versuche, einem Benutzer eine Rolle hinzuzufügen: System.Web.Security.Roles.AddUserToRole ("Andy", "admin"); Ich bekomme "Die Rolle-Manager-Funktion wurde nicht aktiviert." Ich habe keinen benutzerdefinierten Rollenanbieter und habe versucht, den Rollenmanager auf "aktiviert" zu setzen, aber ich habe gerade einen Fehler erhalten, dass ich keinen Rollenanbieter habe. Ich dachte, dass Identity das alles schon eingebaut hat? Kann mir da jemand helfen?ASP Identity 2.0 Hinzufügen neuer Rollen und Hinzufügen von Benutzern zu Rollen

Antwort

17

System.Web.Security ist das alte ASP.NET-Mitgliedschafts-Framework. ASP.NET Identity befindet sich im Namespace Microsoft.AspNet.Identity. Verwenden Sie eine RoleManager zum Erstellen von Rollen und eine UserManager zum Hinzufügen von Benutzern zu Rollen.

var roleManager = new RoleManager<IdentityRole>(new RoleStore<IdentityRole>(context)); 
roleManager.Create(new IdentityRole("Administrator")); 

var userManager = new UserManager<ApplicationUser>(new UserStore<ApplicationUser>(context)); 
var user = new ApplicationUser { UserName = "admin" }; 
userManager.Create(user, "admin321"); 
userManager.AddToRole(user.Id, "Administrator"); 
+0

UserManager und RoleManager implementieren IDisposable, so dass auch berücksichtigt werden muss. –

Verwandte Themen