可以在MVC3应用程序的_ViewStart.cshtml中指定_Layout加部分视图吗?

时间:2013-07-18 12:56:48

标签: asp.net-mvc-3 layout razor razorgenerator

我有一套MVC3 Web应用程序,所有这些应用程序都引用了一个常见的Core.dll。我使用RazorGenerator编译了常见的视图,订阅站点从预编译的.dll中找到了相关的视图而没有任何问题。

我正在尝试对布局页面执行相同操作,因为这在所有站点中也很常见,除了特定于该特定站点的一个或两个div。这也可以正常工作,只要这样做就可以提供_layout视图:

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

但是,为了填充布局中的网站特定div,我希望在特定网站中有一个局部视图,并使用JQuery在_layout中设置placeholding div的HTML。类似的东西:

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

//Have a hidden div containing the partial view that sits in the specific site
<div id="SiteSpecificStuff" style="display:none">
    @Html.Partial("_SiteSpecificStuff", model)
</div>

// Use jQuery to populate the html of the placeholding div on the _Layout 
// with that of the partial view
<script type="text/javascript">

    $(document).ready(function () {
          $("#divPlaceHolderOnLayout")
                        .html($("SiteSpecificStuff").html());
    });

</script>

我试过这个但是_ViewStart不会在每个帖子上重新启动。这可能采用不同的方法吗?

1 个答案:

答案 0 :(得分:0)

我认为你正在寻找这个:

@RenderSection("YouSection", required: false)