1

我试图调用一个视图,但不是全部。我以前偶然做过,但我不记得我是怎么做的,然后再做一次。

这是我展示的示例:

在此处输入图像描述

我只想显示红色圆圈所在的区域。

这是代码:

public ActionResult Logon()
{
  return View();
}

真的很简单,但我有,return PartialView();但这并没有改变它。

有人有想法么?

4

2 回答 2

5

检查您的部分视图是否设置了布局

就像是

@{
     Layout = "views/shared/sitelayout.cshtml";
}

如果它是部分视图,那么您可以(可能)删除它

如果你没有看到这一行,你可能有一个默认的布局继承,需要删除它。然后试试这个

@{
     Layout = null;
}
于 2013-01-26T02:03:01.390 回答
2

在 ASP.NET MVC 中,默认模板有一个名为 Layout.cshtml 的页面,它用作@RenderBody()调用方法的布局内的其他视图呈现的基本视图。它在 _ViewStart.cshtml 页面中定义,并自动应用于所有视图。如果要呈现没有 Layout 页面的 View,则必须将 View 的 Layout 属性设置为 null。

@{
   Layout = null;
}

但是,请记住,如果您的视图没有,您必须添加一些 html 布局才能获得正确的 html。像这样的东西:

@{
   Layout = null;
}
<html>
<head>
   <title>@ViewBag.Title</title>
<body>

// content view

</body>
</html>

您也可以使用 Html.RenderPartial 方法在另一个视图中呈现视图:

@Html.RenderPartial("YouPartialFileName")
于 2013-01-26T02:08:27.560 回答