Avatar billede bongo20 Nybegynder
16. oktober 2004 - 15:10 Der er 15 kommentarer og
1 løsning

Problemer med sessionvariabler eller ?

Hej

Jeg problemer med at holde en bruger "i luften" uden at skulle logge ind igen og igen.

Jeg bruger sessionvaribler til at sætte en brugers brugernavn og spørger så på hver side om den sessionvariable er sat.

Sådan her:

private void Page_Load(object sender, System.EventArgs e)
{
if ( Session["LogonUser"] != null && Session["LogonUser"] != "" )
{
        UserName = Session["LogonUser"].ToString();
        if ( ! IsPostBack )
        {
            FillPageControls();
        }
}
else
{
    Response.Redirect("Default.aspx");
}
}

Der ser ikke ud til at være noget system i hvornår man bliver smidt tilbage til default.aspx,.. om det er hver 10. gang jeg gemmer nye ting i filen og opdaterer, eller om det er hvert 20. minut.

Er der nogen der kender noget til problemet?
Avatar billede cms Nybegynder
16. oktober 2004 - 15:33 #1
Når du ændrer i aspx-filerne, skal de jo kompileres igen, og sessionsobjekterne bliver hermed destrueret.
Avatar billede bongo20 Nybegynder
16. oktober 2004 - 16:03 #2
det er slet ikke hver gang jeg ændrer aspx filerne at jeg får ødelagt sessionobjekterne,.. og jeg har også haft problemet nogle gange hvor jeg ikke ændrer i det,..men udelukkende tester
Avatar billede snepnet Nybegynder
16. oktober 2004 - 23:53 #3
hej bongo :o)
kan du ikke vise den kode du bruger til at sætte session-objektet med ?
mvh
Avatar billede bongo20 Nybegynder
22. oktober 2004 - 11:35 #4
undskyld ventetiden,.. her sætter jeg session variablen

void btnLogin_Click(Object sender, EventArgs e)
{
    string sUserName = Page.Request.Form["txtUserName"].Replace("'", "''");
    string sPassWord = Page.Request.Form["txtPassWord"].Replace("'", "''");

    sqlStr = "Select Id From Data Where UserName = '" + sUserName + "' And PassWord = '" + sPassWord + "'";
    dReader = DB.Query( sqlStr, Conn );
    if ( dReader.Read() )
    {               
        Page.Session["LogonUser"] = sUserName;               
    }
Avatar billede snepnet Nybegynder
22. oktober 2004 - 16:40 #5
hmmm... det ser jo meget tilforladeligt ud.
umiddelbart skulle der jo være noget der "ødelægger" din session.

udover det allerede nævnte, skal du være opmærksom på, at din process recycler, hvilket på en normal opsætning vil medføre at du mister din session.
forhold omkring recycling kan i mindre grad konfigureres i mahcine.config, men det er en ting der sker hvis der f.eks. bliver allokeret meget meget memmory - eller ved mange fejl.

du kan læse lidt om det her :
http://www.codeproject.com/aspnet/aspwp.asp
(er bare første link på denne googling : http://www.google.dk/search?hl=da&q=asp.net+worker+process+recycle&spell=1)

du skulle nok også lige checke om den kode der håndterer klik-eventet er fuldtstændig iorden, og at det ikke er i den situation der opstår problemer.

mvh
Avatar billede snepnet Nybegynder
25. oktober 2004 - 08:09 #6
hej bongo... hvordan går det ?
mvh
Avatar billede bongo20 Nybegynder
25. oktober 2004 - 14:15 #7
Du beskriver den kode der håndterer klik-eventet, hvis ingen fejl jeg får når jeg klikker, så er det vel bare i orden,. eller ?
Avatar billede snepnet Nybegynder
25. oktober 2004 - 18:47 #8
nøh... hvis du ikke får noget med op fra basen, vil den bare ikke sætte dit sessionobjektet, så mit bedste gæt er, at du ikke få det op du forestiller dig.
mvh
Avatar billede snepnet Nybegynder
26. oktober 2004 - 20:08 #9
bongo.... har du stadig problemer med det ?
(og et lille tillægsspørgsmål... bruger du zonealarm ?)
Avatar billede bongo20 Nybegynder
27. oktober 2004 - 19:55 #10
jeg er ikke helt sikker på om det kun er når jeg gemmer min fil igen, det sker,... af og til kan session variablen sagtens virke efter en rebuild,..andre gange er den udløbet.

Men det er noget tid siden jeg har oplevet det på min testsever som jeg ikke builder op til...
Avatar billede snepnet Nybegynder
06. november 2004 - 00:12 #11
hmm.... er helt sikker på at jeg skreve tilbage til dig på den her - men det ser jo ikke ud til at være tilfældet :o)

nå - er du stadig på kant med dine session-variable bongo ?

/snep
Avatar billede bongo20 Nybegynder
24. november 2004 - 16:23 #12
Det sker jo selvfølgelig ofte imens jeg builder til en server men jeg synes da det er underligt at det ikke sker hver gang, men at der kan gå måske 10 gange inden sessionvariablen er ødelagt.. !??

Kan det tænkes at en build forhindrer variablen i at blive opdateret, og den derfor altid vil blive smidt væk efter 20 min ??
Avatar billede snepnet Nybegynder
25. november 2004 - 10:04 #13
det kan være at du kan lave en build som ikke afstedkommer ændringer der kræver at applikationen genstarter... hvis det f.eks. er i en dll der slet ikke er loaded på serveren.
mvh
Avatar billede bongo20 Nybegynder
07. december 2004 - 14:17 #14
smider du et svar snepnet,.. jeg kommer vist ikke videre synes det virker lidt underligt :o)
Avatar billede bongo20 Nybegynder
20. december 2004 - 10:39 #15
sidste chance snepnet ... :o)
Avatar billede snepnet Nybegynder
20. december 2004 - 13:05 #16
sorry sorry sorry :o(
mvh
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester