背景は、私はMVC 4つのバンドルを使用しています</li> <li>多言語システムを構築しています(LTR/RTL)MVC 4
- をバンドルするメカニズムを、言語を追加し、私は別の
Javascripts
とStyles
ファイルを持っている - を備えています右から左(RTL)言語と左から右(LTR)言語の場合
現在、このシナリオは次のように処理しています。
BundleConfigビューで
//Styles for LTR
bundles.Add(new StyleBundle("~/Content/bootstarp").Include(
"~/Content/bootstrap.css",
"~/Content/CustomStyles.css"));
// Styles for RTL
bundles.Add(new StyleBundle("~/Content/bootstrapRTL").Include(
"~/Content/bootstrap-rtl.css",
"~/Content/CustomStyles.css"));
//Scripts for LTR
bundles.Add(new ScriptBundle("~/scripts/bootstrap").Include(
"~/Scripts/bootstrap.js",
"~/Scripts/CmsCommon.js"
));
//Scripts for RTL
bundles.Add(new ScriptBundle("~/scripts/bootstrapRTL").Include(
"~/Scripts/bootstrap-rtl.js",
"~/Scripts/CmsCommon.js"
));
実装ファイル:
@if (this.Culture == "he-IL")
{
@Styles.Render("~/Content/bootstrapRTL")
}
else
{
@Styles.Render("~/Content/bootstrap")
}
質問:
それを実装するより良い方法がある場合、私は思っていました、私は望んでいた:
どのカルチャを検出し、ビュー内ではなくバンドル(コードビハインド)内の正しいファイルを引き出すかのロジックを処理します。
ビューでは、私がしなければならないことは1つのファイルを呼び出すことです。
ビューにロジックを残している場合は、各ビューでそれを処理する必要があることを意味します。私はそれを避けたい。
ところでそれは、ブートストラップがbootstARPビット;) – abatishchev
は、あなたの代わりにHTMLヘルパーを検討したことがありますか? – abatishchev
HTMLヘルパーを使用してファイルの名前を取得することを意味しますか? – Silagy