Hinweis: Nicht sicher, ob das Folgende der richtige Weg ist, um das zu tun, was ich will.Modell automatisch bei jeder Anfrage laden
Hintergrund: Ich habe ein Forum (php) und ich erstelle eine asp.net MVC Web-Anwendung, die eine Art von dem Forum unabhängig ist, mit Ausnahme der Login-Daten. Der Benutzer registriert und loggt sich über das Forum, aber die App muss den Anmeldestatus überprüfen, indem er den Sitzungshash aus dem Cookie liest und ihn mit der Datenbank der eingeloggten Benutzer des Forums vergleicht.
Ziel: Ich schließe meine UserModel-Klasse bei jeder Anfrage ein, um zu sehen, ob der Benutzer bestimmte Berechtigungen hat, um das zu tun, was er tun möchte. Auch für meine Ansichten, um Benutzerbezogene Daten anzuzeigen.
Muss ich so etwas zu jeder Aktion eines Controllers in meiner Anwendung hinzufügen?
public ActionResult Index()
{
UserRepository userRep = new UserRepository();
UserModel user = userRep.GetUserBySession(Request.Cookies["userHash"].Value);
//do stuff with user
...
return View(myViewModel);
}
Danke, Schnitt kann ich dann 'UserModel Benutzer' innerhalb der eingerichteten Methoden zugreifen? Oder muss ich es noch "manuell" laden? – Cornwell
@Cornwell Sie würden es immer noch manuell laden, aber keinen Grund, warum Sie keinen Benutzerdienst erstellen und eine Methode aufrufen können, die den Benutzer zurückgibt, so dass Sie den gleichen Code nicht wiederholen müssen – ediblecode