Szenario 1: In der asp.net Webanwendung ASP.NET_SessionId eine von Microsoft definierte Algorithmensammlung, eine Menge komplexer Algorithmen basierend auf Hardware-IDs, kann im Allgemeinen eine Nichtdoppelung gewährleisten. Wenn Sie jedoch sicherstellen möchten, dass es keine Duplikate gibt, können Sie die SessionID-Generierungsmethode selbst definieren. Portal:http://msdn.microsoft.com/zh-cn/ ... nidmanager.validate(v=vs.80).aspx
Szenario 2: In der asp.net Webanwendung wird die Sitzungssitzung automatisch geöffnet (kann in web.config geschlossen werden), sodass die Website den Sitzungszustand des Benutzers ASP.NET_SessionId beibehält, unabhängig davon, ob der Nutzer geschäftliche Bedürfnisse hat oder nicht! Das führt grundlos zu einem Leistungsverbrauch.
In MVC3 hat Microsoft diesen Teil des Leistungsverbrauchs entfernt, und wenn das Unternehmen die Sitzung nutzt, wird sie von der Geschäftslogik generiert!
SessionIDManager.Validate(String)-Methode
Erhält einen Wert, der angibt, ob die Session-Kennung gültig ist oder nicht.
Beispiel
Das folgende Codebeispiel zeigt die vererbte Klasse SessionID, die ClassSessionIDManager und überschreibt die Methode CreateSessionID und Validate, wobei die Methoden-Guid als SessionID bereitgestellt und validiert wird.
Um die in diesem Beispiel gezeigte benutzerdefinierte Klasse zu verwenden, hat die SessionID eine benutzerdefinierte Klasse in der Web.config-Datei, wie im untenstehenden Beispiel für das HTTP-Modul gezeigt.
Manager ESP Manage Custom Virtual Col Var == Quest
Erstelle eine neue Klasse namens CustomSessionIDManager
Web.Config modifizieren
|