Trädvy Permalänk
Medlem
Plats
Piteå
Registrerad
Okt 2004

Roles i asp.net mvc

Har lagt till roller och det fungerar som det ska, kan ge användare roller osv.
I managecontrollerns index har jag lagt till

<dt>Roles:</dt> @if (User.IsInRole("User")) { <dd>User</dd> } else { <dd>No roles for current user!</dd> } @if (User.IsInRole("SuperUser")) { <dd>SuperUser</dd> } @if (User.IsInRole("Admin")) { <dd>Admin</dd> }

Och det fungerar som det ska, jag undrar helt enkelt om man kan skriva koden på något smartare sätt? "Roles.GetRolesForUser" fungerar ej, "roleManager is not enabled" och enablear jag den får jag nån annan exception

men som sagt, det fungerar som jag vill men vill bara veta om jag kan skriva koden på någe annat sätt

Dock om användaren bara har Admin rollen, inte dom andra står det även "No roles for current user!" det är dock lite galet...

CPU: AMD Ryzen 1700x @ 3.8GHz || Mem: 16GB Corsair LPX 3000mhz || Mobo: Asus x370 Prime || GPU: EVGA Geforce GTX1070 SC || SSD: WD black 500GB m2 || OS: Linux Mint/Win 10 || Monitor: Dell 43" 4K P4317Q

Citera om du vill ha svar :)

Trädvy Permalänk
Medlem
Plats
Piteå
Registrerad
Okt 2004

En annan fråga: hur gör jag om koden nedan så det visar alla users med deras roller typ som såhär

Username | User | SuperUser | Admin
username2 | Admin
username3 | SuperUser

Som det är nu så listar jag enbart rollerna som finns...

public ActionResult Userlist() { List<string> roles; using (var context = new ApplicationDbContext()) { var roleStore = new RoleStore<IdentityRole>(context); var roleManager = new RoleManager<IdentityRole>(roleStore); roles = (from r in roleManager.Roles select r.Name).ToList(); } return View(roles.ToList()); }

<div class="table"> @foreach (string s in Model) { <div class="td"> @s </div> } </div>

CPU: AMD Ryzen 1700x @ 3.8GHz || Mem: 16GB Corsair LPX 3000mhz || Mobo: Asus x370 Prime || GPU: EVGA Geforce GTX1070 SC || SSD: WD black 500GB m2 || OS: Linux Mint/Win 10 || Monitor: Dell 43" 4K P4317Q

Citera om du vill ha svar :)