4

私はすべてのマークアップの読みやすさ(したがってインデント)に少し執着しています。

@Styles.Render("~/content/css")ASP.NET MVC4プロジェクトを呼び出すと、最初の行だけがRazorテンプレートからのインデントを維持します。

出力は次のとおりです。

    <link href="/Content/css/ie.css" rel="stylesheet"/>
<link href="/Content/css/1140.css" rel="stylesheet"/>
<link href="/Content/css/screen.css" rel="stylesheet"/>
<link href="/Content/css/compatibility.css" rel="stylesheet"/>

生成されたすべてのマークアップに、呼び出しと同じインデントを付けることをお勧めし@Styles.Render()ます。

これは簡単にできますか?もしそうなら、どのように?

4

1 に答える 1

6

理想的には、レンダリングされたHTMLは縮小されます。フォーマットされたマークアップは開発中は素晴らしいですが、それがユーザーに提供しているものである場合は、より大きなファイルになります。

4つのスタイルシートが表示される唯一の理由は、デバッグ環境で実行しているため、バンドルが無効になっているためです。投稿「古いjavascriptファイルを使用したScripts.Render」で説明したようBundleTable.EnableOptimizations = true;に、の下部に追加RegisterBundlesすると、 BundleConfig(リリースモードの場合と同様に)バンドルが強制的に機能し、次のことがわかります。

    <link href="/Content/css/ie.css" rel="stylesheet"/>
<link href="/Content/css/1140.css" rel="stylesheet"/>
<link href="/Content/css/screen.css" rel="stylesheet"/>
<link href="/Content/css/compatibility.css" rel="stylesheet"/>

現在、次のようにレンダリングされます。

    <link href="/Content/css?v=Sn3f8Vf56Sr9k0EreIZnouVoGt2cfrd41" rel="stylesheet"/>

ですから、開発中はそうです、それはあなたのインデントを維持していません、しかしあなたが公開したらそれはあなたが望むものになるでしょう。

于 2013-01-30T00:06:54.607 に答える