Сценарий 1: В уеб приложението asp.net ASP.NET_SessionId набор от алгоритми, дефинирани от Microsoft, набор от сложни алгоритми, базирани на хардуерни ID-та, обикновено може да гарантира недублиране. Въпреки това, ако искате да сте сигурни, че няма дублиращи, можете сами да дефинирате метода за генериране на SessionID. Портал:http://msdn.microsoft.com/zh-cn/ ... nidmanager.validate(v=vs.80).aspx
Сценарий 2: В уеб приложението на asp.net сесията се отваря автоматично (може да бъде затворена в web.config), така че уебсайтът запазва състоянието на сесията на потребителя ASP.NET_SessionId независимо дали потребителят има бизнес нужди или не! Това създава консумация на производителност без причина.
В MVC3 Microsoft е премахнала тази част от консумацията на производителност, а когато бизнесът използва сесията, тя се генерира от бизнес логиката!
SessionIDManager.Validate(String) метод
Получава стойност, която показва дали идентификаторът на сесията е валиден или не.
пример
Следващият пример с код показва наследения клас SessionID, класа SessionIDManager и презаписва метода CreateSessionID и Validate, предоставяйки и валидирайки метода Guid като SessionID.
За да използваме персонализирания клас, демонстриран в този пример, SessionID ще има персонализиран клас във файла Web.config, както е показано в примера по-долу за HTTP модула.
Мениджър ESP Управление на персонализиран виртуален COL VAR == Quest
Създайте нов клас, наречен CustomSessionIDManager
Modify Web.Config
|