[解決済み】_ViewStart.cshtmlレイアウトファイルはどこで、どのようにリンクされていますか?
質問
以下は、デフォルトのMVC 3テンプレートのAbout.cshtmlです。
@{
ViewBag.Title = "About Us";
}
<h2>About</h2>
<p>
Put content here.
</p>
私は、_ViewStart ファイルへの参照が
About.cshtml
しかし、明らかにそうではありません。
で調べました。
global.asax
と
web.config
が、どのようにしたら
About.cshtml
ファイルは、_ViewStartファイルからのレイアウトと"link"されています。
すべてが期待通りに動作しています。ただ、ボンネットの下で何が起こっているのか知りたいのですが...。
解決方法は?
から ScottGuのブログ :
<ブロッククオートASP.NET MVC 3 Betaリリースから、ファイル「ASP.NET MVC 3 Beta」を追加できるようになりました。 の下に _ViewStart.cshtml (VBの場合は _ViewStart.vbhtml) という名前のファイルを作成します。 \を使用します。
ViewStart ファイルを使用すると、共通のビューコードを定義することができます。 は、各ビューのレンダリング開始時に実行されるようにしたい。 例えば この場合、_ViewStart.cshtml ファイルに次のようなコードを記述します。 プログラムによって、各ViewのLayoutプロパティに SiteLayout.cshtml ファイルをデフォルトで使用します。
このコードは各Viewの開始時に実行されるので、もはや 個々のビューファイルで明示的にレイアウトを設定する必要はありません。 (ただし、上記のデフォルト値をオーバーライドする場合を除く)。
重要:_ViewStart.cshtmlではコードを書くことができるので レイアウトの選択ロジックを、オプションでよりリッチにすることができます。 基本的なプロパティセットです。 例えば、Layout テンプレートを変更することができます。 どのようなデバイスからサイトにアクセスするかによって、使用するデバイスが異なります。 というように、携帯電話やタブレット端末に最適化されたレイアウトと PC/ノートPC用に最適化されたレイアウト。 あるいは 複数の顧客で利用されるCMSシステムや共通共有アプリなど 顧客によって(または顧客によって)異なるレイアウトを選択することができます。 アクセスする人の役割
これにより、UIの柔軟性を大幅に向上させることができます。 また ビューロジックを一度書けば、複数の場所で繰り返し書く必要はありません。 を使用します。
以下もご参照ください。 この .
関連
-
[解決済み】「The breakpoint will not currently be hit」を改善するには?このドキュメントにはシンボルが読み込まれていません。" という警告はどうすれば改善されますか?
-
[解決済み] NetFx45WebLinkとNetFx45RedistLinkの違いは何ですか?
-
[解決済み] 他のスレッドからGUIを更新するにはどうすればよいですか?
-
[解決済み] C#のStringとstringの違いは何ですか?
-
[解決済み] Microsoft Officeをインストールせずに、C#でExcel(.XLSおよび.XLSX)ファイルを作成するにはどうすればよいですか?
-
[解決済み] C#のconstとreadonlyの違いは何ですか?
-
[解決済み] async」と「await」の使い方とタイミング
-
[解決済み] アセンブリファイルのバージョンを取得する方法
-
[解決済み] RelativeSourceでWPFバインディングを使用するにはどうしたらいいですか?
-
[解決済み] MVC 3:ajax経由でロードされたときに、そのレイアウトページなしでビューをレンダリングするにはどうすればよいですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] msiexec を使用せずにコマンドラインから MSI ファイルをアンインストールする
-
[解決済み] Microsoft.Practices.ServiceLocationはどこから来たのですか?
-
[解決済み] Windowsイベントログで参照される「フレームワークのバージョン」とは何ですか?
-
[解決済み] DockPanelを空きスペースいっぱいに表示させる方法
-
[解決済み] .NET Framework 4 マルチターゲティングパックがアンインストールできない
-
[解決済み] Razor View Page で名前空間をインポートするにはどうしたらいいですか?
-
[解決済み] .Any() vs .Count() > 0のどちらのメソッドがより良いパフォーマンスを発揮しますか?
-
[解決済み] System.Timers.Timer vs System.Threading.Timer
-
[解決済み] PowerShellで文字列がNULLまたは空であるかどうかを確認するにはどうすればよいですか?
-
[解決済み] Math.Round(2.5)はなぜ3でなく2を返すのですか?