SQLiteで一括挿入を行うASHXがあります。このページは2秒間読み込まれます+/-
I / O作業中にASP.NETスレッドを保持しないように、非同期Httpハンドラーを使用して実装することをお勧めします。
IHttpHandlerをIHttpAsyncHandlerに変えるために、これを実行しました。正しいですか?
-ASHXで実装するインターフェイスをIHttpAsyncHandlerに変更しました
-この変数とコンストラクターを追加します。
readonly Action<HttpContext> process;
public ClassConstructor()
{
process = ProcessRequest;
}
-2つのIHttpAsyncHandlerメソッドを実装しました:
public IAsyncResult BeginProcessRequest(HttpContext context, AsyncCallback cb, object extraData)
{
return process.BeginInvoke(context, cb, extraData);
}
public void EndProcessRequest(IAsyncResult result)
{
process.EndInvoke(result);
}
私の主な疑問は、元のProcessRequestを維持し、それをアクションで呼び出す必要があるかどうかです。また、ProcessRequest内でcontext.Responseを使用しても問題がない場合、またはこの作業はEndProcessRequestで実行する必要があります