MVC 3渲染区域中的一个部分

时间:2011-10-24 13:31:45

标签: asp.net-mvc-3 asp.net-mvc-3-areas

我正在尝试从我的自定义区域渲染_layout文件中定义的部分。

在我所在的区域,我有_ViewStart,它指向根网站中的_layout。

我尝试使用的部分位于head标签中,但在我的区域中,它被放入正文中。

在根级别呈现的页面可以正常工作。

〜/查看/共享/ _Layout.cshtml

<head>

    @RenderSection("header", true)
</head>
<body>
 ....
</body>

〜/地区/ UserMedia /查看/ _ViewStart.cshtml

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

〜/地区/ UserMedia /查看/ ManageProjectMedia.cshtml

@{
    ViewBag.Title = "ManageProjectMedia";
}

@section header{
{
<!-- scripts and styles -->
}

<div>
 ... page content
</div>

1 个答案:

答案 0 :(得分:2)

在您的问题上,您指出了一个代码示例,其路径为~/Views/_layout.cshtml,并且在您所在地区的_ViewStart.cshtml文件中,您有以下代码:

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

我相信你会在这里找到七个不同之处:)

七个不同的事情是开玩笑但无论如何。您的_Layout.cshtml位于~/Views/下,但您引用_Layout.cshtml下的~/Views/Shared/