0

私の Web アプリケーションでは、大量のデータを含むレポートをユーザーが実行できるため、実行に時間がかかります。

私の実行レポートページでは、セッション状態をtrueに設定し、レポート生成中にセッション変数に書き込んでいます。同時に、ユーザーが他のページに移動したい場合は、実行によってロックが保持されるため、ナビゲーションを待つ必要がありますレポートページ。したがって、レポート実行ページが完全に実行されると、ユーザーのみがナビゲートされたページを取得します。

セッションがいずれかのページ (セッションへの書き込み) によってロックされている場合、要求のキューイングがあることを意味します。

セッション状態を読み取り専用に変更できません。

この問題を解決するための任意の提案。

コードスニペット

page1.aspx 内

Session["Test"] ="testing...";

// Some long running code

for(int i=0;i<10000000000000;i++)
{

}

今、ユーザーは長時間実行されているコードの間に page2.aspx に行きたいと思っています。その後、page2.aspx で取得しています

Response.Write(Session["Test"]);

to null

前もって感謝します

4

0 に答える 0