0

メソッドを非同期モードで実行する必要があります。デリゲートを作成しようとしましたが、リクエストが完了するとセッションが破棄されます。この関数は、この後も実行を継続し、 を使用できるようにする必要がありますSystem.Web.HttpContext.Current.Session

非同期で実行されているメソッドが、リクエストの完了後に実行を継続できるようにする回避策はありますか?

ありがとう。

4

1 に答える 1

0

デリゲートを使用できますが (たとえば、 )、デリゲートの外側ThreadPool.QueueUserWorkItemへの参照を取得する必要があります。HttpSessionStateBase

HttpSessionStateBase session = Session;

ThreadPool.QueueUserWorkItem(delegate
{
    // You can access session variable here
    ...
});

参照を保持するまで、セッションは破棄されません。簡単なサンプルがここにあります: jQuery UI Progressbar を使用したサーバー側の操作の進行状況の報告

于 2012-10-09T12:56:50.163 に答える