Sql Server 2000データベースを使用してC#で記述されたASP.netアプリケーションに取り組んでいます。クライアントがビジネスニーズに使用するPDFレポートがいくつかあります。問題は、これらのレポートの生成に時間がかかることです(> 3分)。通常、ユーザーがレポートを要求すると、Webサーバーがレポートの生成を完了する前に、要求のタイムアウトによって要求が強制終了されるため、ユーザーはファイルをダウンロードする機会がありません。次に、ユーザーはページを更新して再試行します。これにより、レポート生成プロセス全体が最初からやり直され、タイムアウトになります。(いいえ、現在レポートをキャッシュしていません。それは私が強く求めていることです...)。
これらのシナリオをどのように処理しますか?私の頭の中には、レポートの生成を開始するための非同期リクエストを作成し、その後、定期的にステータスをチェックするためのJavaScriptを用意するというアイデアがあります。ステータスがレポートの終了を示したら、実際のファイルに対して別のリクエストを行います。
私が見ていないもっと簡単な方法はありますか?