@ Html.Action("方法","控制器")正在渲染我的布局

时间:2016-10-19 08:23:04

标签: html asp.net-mvc

我有一个Layout页面,在底部,我有代码调用控制器上的方法,并返回一个局部视图。

在本地,它有效。但是,当我部署到服务器时,似乎@Html.Action("Method", "Controller")再次呈现我的布局。

Html.Action是正确的做法吗?我需要通过调用控制器方法来呈现部分部分。它需要返回从控制器填充的部分视图。

我认为@Html.Partial@Html.RenderPartial会更正确 - 但是,他们似乎并不接受我需要的论据(控制器和方法)。

2 个答案:

答案 0 :(得分:1)

@{
    Layout = null; 
}

位于您的部分视图的顶部(如果您有@model,放在它下面),它将返回您的控制器。

答案 1 :(得分:1)

我猜您在行动中返回ViewResult而不是PartialViewResult。前者在渲染时也包含您的母版页。

当您比较两个类时,MasterName中的主要区别是PartialViewResult。当您使用ViewResult时,会使用来自_ViewStart.cshtml