UpdatePanel
最近、「no-cache」ヘッダーが追加されたHTTPリクエストを使用していることを知りました。これにより、UpdatePanelが更新されるたびにその中の画像がダウンロードされます。これいらない。
では、どうすればこれを防ぐことができますか?
コントロールを拡張してUpdatePanel
、リクエストの一部である「キャッシュなし」を削除することを検討しましたが、より洗練されたソリューションが必要です。
UpdatePanel
最近、「no-cache」ヘッダーが追加されたHTTPリクエストを使用していることを知りました。これにより、UpdatePanelが更新されるたびにその中の画像がダウンロードされます。これいらない。
では、どうすればこれを防ぐことができますか?
コントロールを拡張してUpdatePanel
、リクエストの一部である「キャッシュなし」を削除することを検討しましたが、より洗練されたソリューションが必要です。
jqueryを使用してパネルの内容を手動で置き換えます。私はこれをかなりやりました。私が一般的に使用するパターンは、ユーザーコントロールを使用し、次のようなコードを使用してテキストをキャプチャすることです。
var stringBuilder = new StringBuilder();
using (var tw = new TextWriter())
{
var htmlWriter = new HtmlWriter(tw);
userControl.RenderControl(htmlWriter);
return stringBuilder.ToString();
}
これは、PageMethodに戻った結果であり、指定されたdivにhtmlを設定し、バングします。これで完了です。
開発中の多くのものと同様に、最終的には自動化されたツールで壁にぶつかり、それを機能させるには抽象化のレベルを下げる必要があります。幸運を!
は、画像などの他のリソースへのリクエストではなく、更新の独自のリクエストにUpdatePanel
のみヘッダーを配置します。これらは、コンテンツno-cache
内にある場合でも、通常のリクエストのようにブラウザによって処理されます。おそらく、画像にヘッダー
を付けるのを忘れただけですか?UpdatePanel
Expires