Verwendung von Benutzer -.IsInRole () - in einer Ansicht
In meinem mvc5 Projekt zum deaktivieren einer Aktion link für nicht autorisierte Benutzer wollte ich gerne diese
@if (User.IsInRole("Admin") | User.IsInRole("Manager"))
{
@Html.ActionLink("Add New Record", "ProductTypeIndex", "ProductType")
}
Aber wenn es gibt viele Rollen zu überprüfen, dann das @, wenn() bekommt lang. Wie um dies zu vermeiden? Brauche ich eigene Helfer für diesen(wenn ja, wie kann ich den Ansatz)? Hilfe dankbar..
Du musst angemeldet sein, um einen Kommentar abzugeben.
Könnten Sie schreiben Ihre eigenen extension-Methode, und verwenden Sie es in Ihrem code.
Einfach jetzt Sie nennen könnte diese Erweiterung die Methode so:
Während Sie könnte verwenden Sie diese Erweiterung Methoden im Blick als gut, aber versuchen zu vermeiden, schreiben Sie Ihre apps-Logik in Aussicht, so viel wie möglich, da Ansichten nicht testbare Einheit leicht.
Authorize (Roles = "group1,group2,group3")
. Sie können finden, dass meine version hier. Auf diese Weise können Sie auch verwenden:User.IsInAnyRoles ("group1,group2,group3")