私の Web アプリケーションには、表示目的だけのページがあります。データを確認した後、ユーザーはレポートをダウンロードできます。これには約 2 ~ 3 分かかります。この時間を短縮する必要があります。そこで、ページの読み込みに影響を与えずに時間を共有するために、ページが呼び出されたらレポートの生成を開始することを考えました。Task.Factory.StartNew()
ページロードで使用して、レポート生成メソッドを同時に実行してみました。問題は、期待どおりにメソッドを実行できることです。ただし、ページの読み込みイベントが終了しても、レポートの生成が完了した場合にのみページが表示されます。ページの読み込みが完了したら、ページを強制的に表示し、レポート生成プロセスを後で続行することはできますか? ここに私のコードがあります、
protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
{
// page load condition checks
Task.Factory.StartNew(() => GenerateReports(), CancellationToken.None,
TaskCreationOptions.None, TaskScheduler.Default);
//
}
}