Ingen som får till det?
Session.SessionID förnyas inte som det ska när man använder Session.Abandon();
Varför? funkar det hos er? hur gör jag för att förnya Session.SessionID?
5 svar · 401 visningar · startad av lucgo446
Session.SessionID förnyas inte som det ska när man använder Session.Abandon();
Varför? funkar det hos er? hur gör jag för att förnya Session.SessionID?
Ingen som får till det?
Visa gärna lite av din kod.
Jo, jag använder sessionid för varor i webshop-korgen. när kunden har betalt så ska hans sessionid ändras tänkte jag. Annars ligger han varor kvar i webkorgen.
Det går att lösa på andra sätt, men nu är principen att komma fram till varför det inte går att ändra session id. Det går ju i vanlig ASP.
Det fungerar alldeles utmärkt för mig.
Ifall du menar att SessionID inte förändras av att du anropar Session.Abandon(), så är det alldeles naturligt. Du kan ju naturligtvis inte avsluta den session som används just nu för att köra sidan. Sessionen avslutas när koden för sidan är färdigkörd.
Ja, det funkar ju nu helt utmärkt. jag måste göra nåt annat fel... (nedan funkar fint)
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<script runat="server">
void page_load() {
lblSessionID.Text = Session.SessionID;
}
void btnNewSession_Click(object sender, EventArgs e)
{
Session.Abandon();
Response.Redirect(Request.RawUrl);
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Sessionstest</title>
</head>
<body bgcolor="#C2C287" text="#000000" id="all" leftmargin="10" topmargin="10" marginwidth="10" marginheight="10" link="#660000" vlink="#660000" alink="#660000">
<form id="form1" runat="server">
<div>
<asp:label Runat=server ID="lblSessionID"></asp:label>
<br /><br />
<asp:Button Runat=server ID="btnNewSession" OnClick="btnNewSession_Click" Text="förnya sessionsid" />
</div>
</form>
</body>
</html>