2011-10-21 4 views
0
<link rel="stylesheet" type="text/css" href="../Content/Dashboard/CustomTooltip.css?v=<%= System.Diagnostics.FileVersionInfo.GetVersionInfo(System.Reflection.Assembly.GetExecutingAssembly().Location).FileVersion %>" /> 

カップル:CSSファイルに自動バージョン管理を追加しています。どのように私はアセンブリ情報を引き出すことができないのですか?質問の

  • これはこれについて行くの大丈夫な方法ですか?その考え方は、製品アセンブリ情報が変更され、バージョンが更新され、CSSファイルへのパスが変更され、キャッシュが無効になるというものです。
  • C#コードをウォッチウィンドウに配置すると、適切なバージョン情報が表示されますが、.aspxページにはロードできません。エラーメッセージは表示されませんが、.css?v =はバージョンなしです。

おかげ

編集:それが起こっているの反射を行うにはその何かのように思えます。私が言う場合:

System.Reflection.Assembly.GetExecutingAssembly().GetName().Name 

私は、ウォッチウィンドウで適切な名前を参照してくださいが、.aspxページ上で評価する際には、App_Web_35(正しくない)です。どのようにこれを修正するための任意のアイデア?

Edit2:私は解決策がなくなりましたが、私はそれほど満足していませんでしたが、他の入力を聞きたいです。私の関連CSページで

protected string GetApplicationVersion() 
{ 
    return System.Diagnostics.FileVersionInfo.GetVersionInfo(Assembly.GetExecutingAssembly().Location).FileVersion; 
} 

を - して、コード内で私が<% GetApplicationVersion(と呼ばれるbehing)%>と今では喜んで適切な情報を返します:私はちょうど置きます。しかし、私はそれがインラインにできることを望む。

答えて

1

CSSファイルはhtmlのように静的です。異なるCSSファイルを作成し、この../Content/Dashboard/CustomTooltip_1.0.css

+1

なぜなどのCSSファイルを必要とするので、この

<link rel="stylesheet" type="text/css" href="../Content/Dashboard/CustomTooltip_<%= 'System.Diagnostics.FileVersionInfo.GetVersionInfo(System.Reflection.Assembly.GetExecutingAsse'm'bly().Location).FileVersion %>.css" />' 

のようにそれを呼び出すと思いますか?私は現在、?t = <%DateTime.Now.Ticks%>を使用しており、開発中のキャッシュを完全に防ぐのに最適です... –

+0

はい、乱数などを追加して、キャッシュされていないことを確認できます。しかし、私はdiffent cssファイルが欲しいと思います。 – dknaack

関連する問題