2012-03-18 8 views
3

内部ページと同じ方法でフォーマットされていないHomePageデザイン用の別個の_layout.cshtmlを作成する方法を教えてください。MVC 3 - RAZOR VIEWS - C# - 他のサイトページのホームページのための別個の_Layout.cshtml

- http://michcampgrounds.shadowinteractive.com - ホームページテンプレート 内部のコンテンツページの上部にあるスライダを使用したくありません。

ホームページの_layout.cshtmlを呼び出すことは可能ですか? コンテンツページに別の_layout-content.cshtmlを呼び出していますか?

これにはどのような構文が適していますか?

答えて

3

1つの方法は、必要なビューでレイアウトを上書きすることです。

/Views/Home/Index.cshtml

@{ 
    Layout = "~/Views/Shared/_layout.cshtml"; 
} 

それとも、コントローラでそれを行うことができ

/Controllers/Home.cs

public ActionResult Index() 
{ 
    ViewResult result = this.View(); 
    // i think this is correct and it shouldn't need a full/relative path 
    result.MasterName = "_layout.cshtml";  
    return result; 
} 

これは、 _ViewStart.cshtmlファイルが次のようになっていると仮定します。

@{ 
    Layout = "~/Views/Shared/_layout-content.cshtml "; 
} 
+0

は、私はちょうどuは に制御しますが、たとえばstartPage.cshtmlを使用すると{場合(要求@ を依頼することができますを取得する前に、使用するレイアウトを決めたい場合は、ERIKSの答えに を私の2セントを追加したいです。 IsAuthenticated)レイアウト= ******; else Layout = &&&&;} – Liran

+0

私はこれをテストし、結果をお知らせします。 @リラン - 私もこれを試してみます、あなたの入力に感謝します。 –

関連する問題