Hej! När du postar om en sida sker följande. Hej och tack för svaret. Jag kan nu ha väldigt fel men...UserControl som postar. Inget sessionvärde....
Jag har en sida med en usercontrol.Kontrollen innehåller 2 st fält och en knapp(webControls)....
Om man fyllt i rätt i fälten och trycker på knappen,anropas Button1_Click. I Button1_Click anropar jag sedan en metod som ska skicka ett mail.... Mailet skickas iväg med SmtpMail.Send(objEMail).
Efter denna rad sätter jag en Sessionsvariabel till "true" och avslutar därefter metoden.
Eftersom knappen postar sidan kollar jag i page_load om Sessionen har värdet "true"...Men det konstiga är att sessionen har aldrig värdet true här....Gör jag något tex uppdaterar sidan eller trycker på något, DÅ har Sessionen värdet true?......
Varför har inte Sessionen värdet true direkt eftert att mailet skickats och sidan postas???
Det kan kanske lösa sig genom att titta i ViewState för att se om knappen i kontrollen blivit klickad på....Hur skriver jag isåfall?
Mvh
/TJockeSv: UserControl som postar. Inget sessionvärde....
Page_Load körs (inget session)
När du sedan trycke rpå en knapp händer följande.
Page_Load körs igen så (inget sessionsvärde)
Button1_Click - Sessionvärdesätts
....
Om du trycker samma knapp igen bör sessionen vara satt. Men så är alltså inte fallet?
Du är säker på att du stavat rätt?
I web.config kör du Session In Process? (InProc)
Men du om man bara skall kunna poste en gång (på samma sida) så kan du ju gömma knappen eller sätta den som disable i Button1_click? eller skall man kunna trycka på den igen?
Fördelen med en session är att den är ju true så länge din användare är inne och kan på så vis aldrig skicka mailet igen (om det nu är tanken?) annard kan du ju sätta ett viewstatevärde om du vill.
Mvh JohanSv:UserControl som postar. Inget sessionvärde....
Att Page_Load körs innan Session får ett värde förklarar varför session får värde vid "nästa" aktivitetet på sidan. D.v.s när sidan postas ytterligare en gång......
Kan man då på något sätt tvinga sidan att posta sig själv en gång till så att jag kan plocka ut mitt session värde?
Mvh
/TJockeSv: UserControl som postar. Inget sessionvärde....
Löste det på följande vis....
Efter att skickat iväg mailet gjorde jag en response.redirect till samma sida. Detta innebär väl "knapptryckningspostning" och en "redirectpostning". Jag antar att någonstans emellan postningarna fick session sitt värde. Det fungerar nu :)
Mvh
/TJockeSv:UserControl som postar. Inget sessionvärde....
Session sätts väl efter page_init å innan page_load? Eller?Sv: UserControl som postar. Inget sessionvärde....
"Session sätts väl efter page_init å innan page_load? Eller?"
Inte om man sätter den i ett event som en knapp hanterar vid klick, då detta event triggast först efter att sidan instansierats och körd Page_Init o Page_Load, Page_init aktiverar Page_load... Om jag inte mins helt fel nu, allt kan man ju inte ha i huvudet ;-)
Mvh Johan