2017-06-16 10 views
0

ASP.NET MVC 5でプレーしていますが、MVCでは使用していません。 デバイスDeviceUsageDeviceErrors、など)と店舗StoresStoreInstallationsなど)_layout.cshmlの条件付きサブメニュー

私は、エンティティフレームワークパワード2つの広いカテゴリーにその年の秋にページを返すコントローラのセットを持っています

私は_layout.cshmlページを持っています。このページには、ウェブサイト(ストアとデバイス)の主要なナビゲーション領域が含まれているページヘッダーがあります。私が望むのは、そのカテゴリ内のページだけを表示する、つまり、DeviceUsageDeviceErrorsなどのいずれかを表示する場合、これらのオプションだけがサブメニューに表示されるナビゲーションの2番目のレイヤーです。

これを行う最も簡単な方法は何ですか?

答えて

0

動的コンテンツを追加できるようにセクションを作成します。 @ Html.Actionや@ Html.RenderActionのような他のカミソリ関数を使用したいかもしれません。必要ならば Here is a tutorial for sectionsです。

+0

私は 'layout.cshml'で' @RenderSection() 'を使い、各ビューでセクションを定義することができました。しかし、異なるビュー間でコードを共有する方法はありますか? 'DeviceUasge.cshtml'と' DeviceErrors.cshtml'は同じですが、 'Stores.cshtml'と' StoreInstallations.cshtml'には別のものがありますか? –

+0

あなたのアプリケーションの構造はわかりませんが、あなたができることは 'layout.cshtml'で' @RenderSection( "SubMenu"、required:false) 'を定義することです。次に、 'DeviceUsage.cshtml'と' DeviceErrors.cshtml'で '@section SubMenu {@ Html.PartialView(" DeviceSubMenu ")}'関数のような同じビューを取得するPartialViewを使います。ストアビューでは、 '@section SubMenu {@ Html.PartialView(StoreSubMenu")} ' –