Skenaario 1: asp.net verkkosovelluksessa Microsoftin määrittelemä joukko algoritmeja ASP.NET_SessionId monimutkaiset algoritmit, jotka perustuvat laitteistotunnuksiin, voivat yleensä varmistaa päällekkäisyyksien välttämisen. Jos kuitenkin haluat varmistaa, ettei kaksoiskappaleita ole, voit määritellä SessionID:n generointimenetelmän itse. Portaali:http://msdn.microsoft.com/zh-cn/ ... nidmanager.validate(v=vs.80).aspx
Skenaario 2: asp.net verkkosovelluksessa Session-istunto avataan automaattisesti (voidaan sulkea web.configissa), jolloin verkkosivusto säilyttää käyttäjän istuntotilan ASP.NET_SessionId riippumatta siitä, onko käyttäjällä liiketoimintatarpeita vai ei! Tämä aiheuttaa suorituskyvyn kulutusta ilman syytä.
MVC3:ssa Microsoft on poistanut tämän osan suorituskyvyn kulutuksesta, ja kun yritys käyttää istuntoa, se generoidaan liiketoimintalogiikalla!
SessionIDManager.Validate(String) -menetelmä
Saa arvon, joka kertoo, onko istunnon tunniste kelvollinen vai ei.
esimerkki
Seuraava koodiesimerkki näyttää perityn luokan SessionID:n, SessionIDManager-luokan ja ohittaa CreateSessionID- ja Validate-metodin, tarjoten ja validoiden metodin Guidin SessionID:nä.
Tässä esimerkissä esitetyn mukautetun luokan käyttämiseksi SessionID:llä on oma luokka Web.config-tiedostossa, kuten alla olevassa HTTP-moduulin esimerkissä on esitetty.
Manager ESP manage custom virtual col var == quest
Luo uusi luokka nimeltä CustomSessionIDManager
Muokkaa Web.Configia
|