Ich versuche, eine Liste der Benutzer meiner Anwendung "Schule" zu zeigen, wenn sich der Administrator anmeldet, dann kann er alle Benutzer in der Liste sehen, aber wenn Schulleiter sich anmeldet, sollte er nur Benutzer seiner Schule bekommen, also dachte ich Um die aktuelle geloggte Benutzer-ID zuerst und dann von dieser Benutzer-ID zu erhalten, erhalte ich schulId, da Benutzer-ID ein Fremdschlüssel in der Schultabelle ist ... sobald ich die Schul-ID erhalte, kann ich die Mitglieder dieser Schule zeigen.
Aber mein Problem ist, wie man die UserID von aktuell angemeldetemIn bekommt. Ich benutze MVC 1.0 Asp.Net - "Mitgliedschaft"
Wenn meine obige Logik falsch ist, dann sagen Sie mir bitte die alternative gute Idee, damit der Prinzipal nur seine Benutzerliste sehen kann.
Die einfache Lösung Mit dem beschriebenen Szenario können Sie dies nur tun, indem Sie die Benutzerinformationen mit den in der HttpContext.Current.Identity gespeicherten Daten abrufen. Wenn beispielsweise HttpContext.Current.Identity.Name der Benutzername ist, würden Sie diesen Wert verwenden, um die Benutzerdaten für den Prinzipal abzurufen, der die UserId enthalten soll, die Sie zum Auffinden der entsprechenden Schule verwenden können.
Alternative Lösung Möglicherweise möchten Sie die SchoolId im Benutzerprofil speichern, damit sie leichter zugänglich ist.
Basierend auf diesem Frage und Antwort von J. Pablo Fernández Sie können die Benutzerkennung des aktuellen Benutzers mit dem folgenden Code abrufen:
%Vor%Hier ist die MSDN-Dokumentation .
>Der einfachste Weg, den ich versucht habe
Sie müssen Microsoft.AspNet.Identity
Dann benutze es so
%Vor%Tags und Links asp.net-mvc asp.net