gpt4 book ai didi

asp.net - 插入 _ViewStart.cshtml

转载 作者:行者123 更新时间:2023-12-04 04:54:31 27 4
gpt4 key购买 nike

是否可以仅将 viewstart 用于特定的 Controller 和 View ?
我只在 View 文件夹中使用 _Layou.cshtml 文件。
现在我将 _ViewStart.cshtml 添加为 View 文件夹内的公共(public) View ,并将 _Layout 移动到共享文件夹。

这是程序结构:

Homecontroller
public ActionResult Index()
{
return View();
}

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

_Layout.cshtml
{
//design code for Index.chtml
}

根据上面的代码, _Layout 为 homecontroller 呈现。
完成第一行提到的更改后,我将在我使用的每个 Controller 中的 _Layout.cshtml 中获取控件。
我使用了近 6 个 Controller 。
如何在不影响整个代码的情况下进行此更改。
请帮忙。

PS:我需要在程序中引入 _ViewStart,因为我正在将 openid 与我已经开发的项目集成。

最佳答案

  • 您可以创建另一个 _ViewStart.cshtml (例如在 Views/[controller] 子文件夹中)将覆盖根目录,例如:
    @{ Layout = null; }
  • 您可以简单地使用 ViewBag确定是否使用布局:

    public ActionResult AnotherAction()
    {
    ....
    ViewBag.NoLayout = true;

    return View();
    }


    在你的_ViewStart :

    @{
    if (ViewBag.NoLayout == null || !ViewBag.NoLayout)
    Layout = "~/Views/_Layout.cshtml";
    }
  • 关于asp.net - 插入 _ViewStart.cshtml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16941833/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com