2017-03-02 4 views
0

iは、ユーザログがセッションは

で、ユーザはデータ入力や、彼のとき、私は、データベースからそれを得るそのユーザーIDを保存するために、セッションASP.Net C#のWebフォームを使用し、ポストバックを何度ASP.Net C#のWebフォームの後に失われましたポストバックがたくさんあるので、上の私のWebページのユーザーログアウトするまで、私は生きている私のセッションを必要とする問題は、この問題を防ぐためにどのように私は、いくつかのポストバック後に私のセッションを失う

あるデータベースにアップロードする

をいくつかのフォームを埋めますホスティングサーバー

Session["EmpID"] = dt.Rows[0]["EmpID"].ToString(); 

答えて

0

私はいくつかの提案があります。セッションタイムアウトを確認し、いつでもコード内でセッションをクリアしていないことを確認し、アプリケーションプールがリサイクルされていないことを確認してください。これらのいずれかが動作しない場合は、モードとタイムアウト属性が設定されたWeb.ConfigファイルのSessionStateノードがあることを確認してください。また、セッションが設定されている間にデータを取得していることを確認してください。お役に立てれば。

+0

ありがとうございますが、アプリケーションプールがsmarterasp.netホスティングを使用してリサイクルしていないことを確認するにはどうすればいいですか?web.configのタイムアウト時間が40秒のSessionStateについて –

+0

あなたのコードでは、 IISのリサイクルを引き起こします。これはあなたが知っているので、Configファイルの "InProc"ではなく "StateServer"にモード属性値を変更して、それを実行してみてください。この場合、再サイクルが発生しても動作するはずです。しかし、コードがIISのリサイクルを引き起こす場所を確認するのが最善です。 –

関連する問題