28. marts 2007 - 13:18Der er
5 kommentarer og 1 løsning
Direkte anvendelse af SessionState (SQLServer)
SQLServer SessionState er en mekanisme i .NET til automatisk at tage ting som gemmes i session og serialisere dem og persistere dem i en database i en ASPState-database. Den opsættes i konfigurationenen og kan herefter tilgås fra HttpContext.Current.Session ligesom ved almindelig session.
Jeg kunne godt tænke mig at tilgå SQLServer SessionState-mekanismen udenom ovenstående, da jeg skal bruge den i et HttpModule. Derfra kan HttpContext.Current.Session ikke tilgås, men alle oplysninger er faktisk tilgængelige til at anvende session alligevel.
Nogen der ved hvor i .NET-frameworket jeg finder mekanismen til at gemme session i ASPState-tabellen?
Den moderne arbejdsplads er i stigende grad afhængig af mødelokaler til at fremme samarbejde, men dette skift medfører også stigende sikkerhedsudfordringer.
Klassen hedder SqlSessionStateStore, men den er internal. Den bliver instantieret af et SessionStateModule (som er Sealed), og stilles til rådighed af HttpContext objektet.
Du kan godt tilgå session fra dit eget module... Bare gør det sent nok - f.eks.:
public void Init(HttpApplication application) { application.PostRequestHandlerExecute += new EventHandler(application_PostRequestHandlerExecute); }
Det var et ret godt svar på et svært spørgsmål. Så må filerne til StateServer ligge lige i nærheden også. Man kan vel bare nuppe kildekoden og rekompilere med public, ikke?
Hvad er du da du skal siden det ikke går? (det gemmes jo i en sql-server i dit tilfælde, og den kan jo sådan set altid tilgås - og du kan jo godt bruge koden fra den eksisterende provider). Mvh
Mit formål er at udnytte .NET's egne klasser - hvad enten det er StateServer eller SQLServer - til at gemme værdier som er delt på tværs af min webfarm. Det er altså strengt taget ikke session jeg vil gemme.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.