私は自分のサイトの各クライアントのセッションコードを作成しようとしています。グローバルasaxのSession_Startで私はこのコードを持っています:ASP.NETセッション識別子
private static long codSesion = 0;
private static object codSesionLocker = new object();
protected void Session_Start(object sender, EventArgs e)
{
if (Session["CodSesion"] == null)
{
lock (codSesionLocker)
{
if (Session["CodSesion"] == null)
{
if (codSesion == 9999)
codSesion = 0;
codSesion++;
Session["CodSesion"] = codSesion;
}
}
}
}
これをモニターすると完璧と思われます。何もしない時間が過ぎると、問題が始まります。 1つ目は、1回から何回もやり直すことです(9999に到達せずに、IISの再構築なしで)。そして、最近ではtahtよりもさらに悪い:私はコード1と2を使いました。私はサーバーの使用をやめました(活動をせずにIISを取り消す)。ほぼ1時間(50分)後、もう一度試しました。 IISが私に与えたコードは2であった(最後のコード2とは異なるPCで)。
本当にありがとうございます。
作成したリクエストで実際にセッションにアクセスするコードはありますか? – Restuta
そして、なぜ、あなたはこれで大丈夫ではないのですか? http://msdn.microsoft.com/en-us/library/system.web.sessionstate.httpsessionstate.sessionid.aspx – Restuta
あなたは何を達成しようとしていますか?セッションはすでにID:SessionID ... –