2010-12-23 20 views
7

App_Themeフォルダ内のスタイルシートがブラウザにキャッシュされます。どのようなアプローチが必要ですか?新しいデプロイメントがあるたびに、ブラウザは最新のスタイルシートを使用し、ブラウザにキャッシュされたスタイルシートは使用しないようにしてください。App_ThemeフォルダのCSSがブラウザにキャッシュされます。

リンクこれはテーマフォルダにCSSのために行うことができる方法

http://blog.sallarp.com/asp-net-automatic-css-javascript-versioning/

で述べたように、これは(テーマフォルダにされていない)他のCSSのもそう使用されるカスタムコントロールを起こっていました?

編集:テーマ名は、下記のようにweb.configに記載されています。リンクに記載されているメソッドを使用して解決したhtmlリンクタグだけではありません。

<pages styleSheetTheme="Default"> 
     <controls> 

     </controls> 
    </pages> 

答えて

4

を議論したように、セットアップのキャッシング限度にhtaccessファイルを使用することができますファイル名は、きれいではありませんが、IIS上でキャッシュを無効にすることなく、他の方法は考えられませんでした。

mycss-V1.0.css、CSSに

0

あなたはcssファイル名にタイムスタンプか、私もこれに遭遇していると私が思いついた解決策は、あなたのCSSにバージョンを追加することで、ここでhttp://css-tricks.com/can-we-prevent-css-caching/

0

を再ロードするためにあなたの 、ユーザのWebブラウザを強制するようにGETパラメータとしてタイムスタンプを送信することができると言ってCSSファイルの名前を変更よく

EG:24033957203712はタイムスタンプである

http://mysite.com/theme/dir/style.css?id=24033957203712

+0

これはapp_themeフォルダ内にあるcss用です。テーマ名はweb.configにのみ記載されています。 – dhinesh

+0

@dhineshあなたに適切な答えを見つけるために、さらに詳しい情報が必要な場合があります – nivanka

+0

質問を編集しました。 – dhinesh

4

Webアプリケーションをデプロイするときは、バージョン番号をテーマパスに含めます。たとえば、App_Themes/Default/v1.2.0.4321/のようになります。v1.2.0.4321は、バージョン1.2.0.4321の展開時に追加されたフォルダです。これにより、テーマ名(「デフォルト」など)とファイル名の両方が保持され、ソースコードの制御とパス参照がはるかに容易になります。 ASP.NETは、サブフォルダに関係なく、現在のテーマフォルダ内のすべてのCSSファイルを読み込みます。これは、CSSファイルを参照する問題を解決するだけでなく、CSSファイル(例えば、背景画像)内から参照される画像を解決する。

また、次回のWebアプリケーションの更新時にすべてのテーマファイルが確実に更新されるように、パフォーマンスを向上させるために、App_Themesのブラウザキャッシュの持続時間をに増やすことができます。

Web.Configの<configuration>セクションにこれを追加して、ブラウザを120日間キャッシュします。

<location path="App_Themes"> 
    <system.webServer> 
     <staticContent> 
      <clientCache cacheControlMode="UseMaxAge" cacheControlMaxAge="120.00:00:00" /> 
     </staticContent> 
    </system.webServer> 
</location> 
0

ブラウザキャッシュは、応答ヘッダーまたはブラウザ設定で設定された有効期限に基づいています。

があり、我々はCSSを展開し、すぐにユーザーにプッシュしたいされているときタイミングですが、バージョン(例えばstyle.css?v2など)ASPファイルから参照されるCSSファイルにはできません。

このような場合、特定のCSSファイルの変更された/新しいスタイルクラスだけをaspxファイルのHeadセクションに追加できます。スタイルオーバーライドを作成せず、問題を修正しません。

関連する問題