<link rel="stylesheet" type="text/css" href="../Content/Dashboard/CustomTooltip.css?v=<%= System.Diagnostics.FileVersionInfo.GetVersionInfo(System.Reflection.Assembly.GetExecutingAssembly().Location).FileVersion %>" />
いくつかの質問:
- これはこれについての大丈夫な方法ですか?製品のアセンブリ情報が変更され、バージョンが更新されると、CSSファイルへのパスが変更され、キャッシュが無効になるという考え方です。
- C#コードをウォッチウィンドウに配置すると、適切なバージョン情報が表示されますが、.aspxページにロードできません。エラーメッセージは表示されませんが、バージョンなしで.css?v=と表示されます。
ありがとう
編集:それは起こっている反射と関係があるようです。私が言うなら:
System.Reflection.Assembly.GetExecutingAssembly().GetName().Name
ウォッチウィンドウに適切な名前が表示されますが、.aspxページで評価すると、App_Web_35です(正しくありません)。これを修正する方法はありますか?
Edit2:結局、私はあまり満足していない解決策を選びましたが、他の意見を聞きたいと思っています。私はちょうど置きます:
protected string GetApplicationVersion()
{
return System.Diagnostics.FileVersionInfo.GetVersionInfo(Assembly.GetExecutingAssembly().Location).FileVersion;
}
関連するCSページで-そしてコードbehingで<%GetApplicationVersion()%>を呼び出したところ、適切な情報が返されました。ただし、インライン化できればいいのですが。