我正在MVC应用程序中开发布局页面。布局页面具有
-标头
-内容
-页脚
标头包含ogo,欢迎消息,用户信息以及其他几个链接。
我的问题是,应该将标头设计为局部视图还是使用Rendoraction渲染它。 PartialView运行正常。但是由于此数据不依赖于页面的其余部分,因此我想调用一个控制器操作,该操作返回一个具有其自身模型的标题视图。
但是HTML Rendor操作无效。
_Layout.cshtml
<body>
<div class="main_page">
<div id = "header">
*@Html.Partial("HeaderPartial", @Model)*@
@Html.Action("Header")
</div>
<div id="body">
@RenderBody()
</div>
<div id="footer">
</div>
</body>
家庭控制器
public ActionResult Header()
{
Var VModel = //Create Model;
return View(VModel)
}
header.cshtml
@model VModel
<div>
</div>
执行处理程序的子请求时出错
System.Web.Mvc.HttpHandlerUtil + ServerExecuteHttpHandlerAsyncWrapper
最佳答案
您的header.cshtml
外观对我来说很少见,但是如果您想将标题视图作为部分视图
第一:
Remove the layout using
@{
Layout = null;
}
第二要在您的布局上呈现此视图,请使用
@Html.Action("Header","Home", new { foo= @someElement}) <-- this element send values to your action
关于asp.net-mvc-3 - ASP.NET MVC3-Html.RenderAction无法正常工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10709756/