2

Asp.net MVC Razor では、この_ViewStart.cshtmlファイルを使用して、ビューの既定のレイアウトを定義できます。それは問題ありませんが、設定で Web フォーム エンジンで使用可能だった web.config 設定が失われたのはなぜsystem.web > pages.masterPageFileですか?

なぜそれが重要なのですか?web.config により、環境の自動変換が可能になるためです。

手動ソリューション

もちろん、デフォルトのレイアウト名を入れてappSettingsそれを参照するか、_ViewStart.cshtmlアプリケーション固有の構成セクションに追加のプロパティを追加して、物事をもう少し明確で洗練されたものにすることができます...

しかし、コードを含まない他の方法はありますか?

Asp.net MVC チームはlayoutFile構成設定をsystem.web.webPages.razor > pages要素に追加する必要がありますね。

主な質問は

組み込みの何かが不足していて、私が知らないのですか? WebForms エンジンと同様に、コードをまったく必要としないものはありますか?

4

1 に答える 1

3

Asp.net MVC チームは、layoutFile 構成設定を system.web.webPages.razor > pages 要素に追加する必要がありますね。

MS Connect サイトで気軽にチケットを開いてください。

ただし、チケットが開発チームによって分析され、ASP.NET MVC フレームワークと Web ページの将来のバージョンに追加される可能性があるのを待っている間は、_ViewStart.cshtml.

@{
    Layout = ConfigurationManager.AppSettings["Layout"];
}

次に、web.config ファイルでレイアウトを定義します。

<appSettings>
    <add key="Layout" value="~/Views/Shared/_Layout.cshtml" />
    ...
</appSettings>

もう 1 つの可能性は、レイアウトを動的に設定するカスタム Razor ビュー エンジンを作成することです。

于 2012-06-18T09:58:06.257 に答える