Asp.net mvc 4 Action不会将任何内容放入页面(WebView语法)

Asp.net mvc 4 Action不会将任何内容放入页面(WebView语法),asp.net-mvc-4,Asp.net Mvc 4,当我在webview语法中使用Html.Action时,它不会将任何内容放入页面。当我调试没有任何问题时,我看到它进入TopMenu操作的导航控制器,但页面上没有显示任何内容。我错过什么了吗 //I USE THIS ON MASTERPAGE <% Html.Action("TopMenu", "Navigation"); %> //IN CONTROLLER public class NavigationController : BaseController { pu

当我在webview语法中使用Html.Action时,它不会将任何内容放入页面。当我调试没有任何问题时,我看到它进入TopMenu操作的导航控制器,但页面上没有显示任何内容。我错过什么了吗

//I USE THIS ON MASTERPAGE
<% Html.Action("TopMenu", "Navigation"); %>


//IN CONTROLLER
public class NavigationController : BaseController
{
    public ActionResult TopMenu()
    {
        return PartialView("TopMenu");
    }
}
//我在母版页上使用它
//内部控制器
公共类NavigationController:BaseController
{
公共操作结果TopMenu()
{
返回部分视图(“TopMenu”);
}
}
您使用的剃须刀不正确。与其将代码放在代码块上,不如在视图中使用@语法,如下所示:

<%= Html.Action("TopMenu", "Navigation") %>

或者,如果您仍然想使用代码块,可以使用Html.RenderAction帮助程序。这将直接写入缓冲区(效率也会提高一点)

这样做:

<%= Html.Action("TopMenu", "Navigation") %>

而不是:

<% Html.Action("TopMenu", "Navigation") %>


你能发布主视图和顶部菜单部分视图吗?问题与Razor.Downvote无关?这是同样的原理,他使用代码块而不是表达式,不管他是否使用razor实际上都是无关的,但这不是你的答案所说的。你的回答是“你用的剃须刀不正确”,这完全是胡说八道。天哪,你来了,开心吗?本可以编辑答案并制作有用的东西,而不是抱怨和拒绝投票。拒绝投票按钮的存在是有原因的。你应该正视你的态度。