jgauffin
jgauffin

Reputation: 101192

ContentPlaceHolder in Razor?

I can use ContentPlaceHolder's with Webforms view engines to put stuff in different locations in the master page.

How do I do that with Razor?

    <div id="content">
        <asp:ContentPlaceHolder ID="MainContent" runat="server">
        </asp:ContentPlaceHolder>
    </div> 
    <div id="footer">
        <asp:ContentPlaceHolder ID="Footer" runat="server">
        </asp:ContentPlaceHolder>
    </div>

Upvotes: 57

Views: 19707

Answers (2)

Kyle
Kyle

Reputation: 1172

Couldn't leave a comment sorry but you can remove the "required:"

@RenderSection("footer", false)

Upvotes: 10

jgauffin
jgauffin

Reputation: 101192

Yet again I managed to ask before finding the correct search keywords in Google.

In the layout

@RenderSection("footer", required: false)  

View example

<h2>About</h2> 

<p>   
    Some stuff about this page.   
</p> 

<p> 
    The current date and time: @DateTime.Now  
</p> 

@section footer { 

    Copyright (c) 2010, Robert Sundström. 

}

Upvotes: 92

Related Questions