0

ASP.Net (Framework 4) と Microsoft Charts を使用してページを作成しています。

これらのチャートはデータベースへの大量のクエリを必要とするため、ユーザーが無駄なクエリでデータベースをオーバーフローさせないようにキャッシュしたいと考えています。

ページのキャッシュには成功しましたが、キャッシュからページを更新するとグラフが消えます。チャートの画像がキャッシュに保存されていないためだと読みました。

ページがキャッシュからリロードされたときにグラフが消えないようにするにはどうすればよいですか?

詳細情報:

  • ASCX コントロールを含む ASPX ページがあります。
  • このコントロールには、System.Web.UI.DataVisualization.Charting.Chartコンポーネントがあり、OnLoad メソッド内に取り込まれ、データベースへのアクセスが多くなります。
  • ASPX ページと ASCX コントロールをキャッシュして、データベースに頻繁にクエリを実行することを避けたいと考えています。
  • このマークアップ<%@OutputCache Duration="15" ... %>を使用すると、F5 を押すとページがキャッシュから更新されますが、グラフは失われません。
4

2 に答える 2

1

DBからデータをキャッシュできます(グラフの描画に使用されます)

于 2012-05-29T14:26:34.113 に答える
0

Web.config ファイル内の構成に問題があったようです:

この行を次のように編集しました。

<add key="ChartImageHandler" 
value="storage=file;timeout=360;
dir=c:\TempImageFiles\;
webDevServerUseConfigSettings=true;
deleteAfterServicing=false;"/>

次に、ASPX ファイル (上部の<%@ Page .../>マークアップのすぐ下) に次のコマンドを入力するだけです。

<%@ OutputCache Duration="10" Location="Server" VaryByParam="none" %>

これで、グラフを含め、ページがキャッシュから適切に更新されるようになりました。

于 2012-05-30T09:03:31.150 に答える