【问题标题】:Razor RenderPage and PageData not workingRazor RenderPage 和 PageData 不起作用
【发布时间】:2018-06-28 23:17:10
【问题描述】:

我是 razor 的新手,我正在按照教程编写一个超级简单的 hello world 类型的应用程序。每次我尝试使用 PageData 或 RenderPage 时,我都会得到以下信息:

The name 'PageData' does not exist in the current context
+
        @{ if ((bool)PageData["ShowFooter"] == true)
The name 'RenderPage' does not exist in the current context
+
                @RenderPage("_footer.cshtml")

我假设我错过了一些超级简单的东西,我只是不知道那会是什么。任何帮助将不胜感激。

【问题讨论】:

  • 我选择了 Web -> Asp.Net core -> Web App (MVC)
  • 你能分享你正在学习的教程吗?我在 ASP.NET Core 和 ASP.NET Core Razor Pages 中都看不到类似的选项。要么教程太旧,要么不适合 ASP.NET Core
  • 这是我一直在查看的内容:docs.microsoft.com/en-us/aspnet/web-pages/overview/… 向下有一个“PageData["ShowList"] 示例,我一直在尝试调整
  • 啊,所以您确实在学习一个非常古老的教程。查看“软件版本”部分,上面写着“ASP.NET Web Pages (Razor) 3”。这是 ASP.NET WebForms 和 MVC 之间的旧组合。要么创建一个新的 ASP.NET 网页(警告:旧,已弃用)项目,要么获取 ASP.NET Core Razor 页面教程
  • @CamiloTerevinto 谢谢,这是有道理的。我会寻找其他方法来做我想做的事。

标签: c# razor asp.net-core asp.net-core-mvc


【解决方案1】:

我不确定我的回答是否会有所帮助,但我想分享我的想法,因为我遇到了同样的问题。 因为我无法在应用程序第一次启动时呈现为 js 脚本创建的页面,所以我使用了一个名为 partial 的标签来呈现我的 cshtml 页面

<partial name="~/wwwroot/assets/scripts.cshtml" />

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-02-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-26
    • 1970-01-01
    相关资源
    最近更新 更多