私はこのようなコードを持っています:
context.HttpContext.Response.Clear();
context.HttpContext.Response.Write(htmlString);
context.HttpContext.Response.End();
しかし、ページが読み込まれると、閉じられていないhtmlタグがページに表示されます。 Response.End()をResponse.Flush()で置き換えると正常に動作します。 Response.End()とResponse.Flush()の違いは何ですか?
Response.Flush
現在バッファリングされているすべての出力を強制的にクライアントに送信します。 Flushメソッドは、リクエスト処理中に複数回呼び出すことができます。
Response.End
現在バッファリングされているすべての出力をクライアントに送信し、ページの実行を停止し、EndRequestイベントを発生させます。
Response.Writeの後にページで処理を行わず、ページの処理を停止する場合は、このコードを使用してみてください。
context.HttpContext.Response.Clear();
context.HttpContext.Response.Write(htmlString);
context.HttpContext.Response.Flush(); // send all buffered output to client
context.HttpContext.Response.End(); // response.end would work fine now.