首页 > 解决方案 > 无法使用“RenderBody”.NET CORE 获取子视图 html 内容?

问题描述

我正在努力获得我页面的子视图。以前,它有效,但我不知道我做了什么导致子视图停止工作。这是我的代码:

控制器:

    public IActionResult Index(){

       ViewBag.Message = TempData["Message"];

        ViewBag.Hello = "say hello";
        return View("Index");

    }

看法:

@using MAJU.Models
@using FYPProject.Controllers
@model FYPProject.Pages.DashboardModel

@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers  


@{
   Layout = "_Layout";
   ViewData["Title"] = "NManagement - Dashboard";        
   bool a = true;

}


    <body >
        <p>This is Dashboard Body</p>


    </body>

从以下位置访问页面:

http://localhost:5000/Dashboard

我已经尝试了一切,但@RenderBody没有呈现我的页面。我想我犯了一些愚蠢的错误。请帮我弄清楚

标签: .netasp.net-mvcasp.net-coremodel-view-controller

解决方案


首先应该是

@RenderBody()

不是

RenderBody

而你的控制器你只需要

return View();

因为框架将在文件夹中搜索与您的控制器名称和操作名称匹配的视图

每个项目都有_ViewStart.cshtml,这样我们每次创建新视图时都不必包含布局页面

_ViewStart.cshtml 文件的内容

@{
    Layout = "_Layout";
}

如果您有任何问题,请告诉我


推荐阅读