当前位置: 首页 > 知识库问答 >
问题:

如何在cshtml视图中使用Asp.NET核心MVC中的变量?

仰翰采
2023-03-14

我正在从.NET Framework迁移到.NET 5.0,并且我正在尝试使用Razor视图中的变量,就像普通的asp MVC一样,@page变量中存在语法错误

错误:“@page”指令必须位于Razor文件中定义的所有其他元素之前。

错误:“page”指令必须出现在行的开头。

错误:“page”指令值必须用空格分隔。

代码:

@for (var page = Model.Pager.StartPage; page <= Model.Pager.EndPage; page++)
 {
       if (page == Model.Pager.CurrentPage)
       {
         <li class="active"><span style="line-height:20px">@page</span> </li>
       }
       else
       {
        <li><a href="@Url.Action("Index","Blogs",new { page = @page,pageSize=10 })">@page</a></li>
       }
  }

共有2个答案

陶永望
2023-03-14

使用simple page或@(page)代替@page,错误将被解决。

裴兴学
2023-03-14

对于razor pages,@Page是一个保留字,应该在第一行。您不应将其用于自定义代码:

因此,像这样重写代码:

@page

..... your html

@for (var pg = Model.Pager.StartPage; pg <= Model.Pager.EndPage; pg++)
 {
       if (pg == Model.Pager.CurrentPage)
       {
         <li class="active"><span style="line-height:20px">@pg</span> </li>
       }
       else
       {
        <li><a href="@Url.Action("Index","Blogs",new { pg = @pg , pageSize=10 })">@pg</a></li>
       }
  }
 类似资料:
  • 我正在尝试将ASP.NET MVC webform迁移到ASP.NET核心MVC。当前,类遇到问题。 原来的行是: 但是,对于ASP.NET核心,UrlReferrer不可用。我发现了以下内容: 它返回StringValues而不是String。我不确定我是否应该尝试使用这一个,或者是否有任何其他解决办法来解决这种情况。也不可用,或者我没有该命名空间。我的命名空间如下: 如果有人能指引我正确的方向

  • 问题内容: 如何使用jquery渲染局部视图? 我们可以这样渲染部分视图: 我们如何使用jquery做同样的事情? 问题答案: 我已经使用ajax加载来做到这一点:

  • 我目前正在尝试评估Kendo UI ASP.NET mvc 6(“ASP.NET核心”)小部件。我下载了示例项目kendo.mvc.examples项目,可以在以下站点找到:http://docs.telerik.com/kendo-ui/aspnet-mvc/aspnetmvc-apps/mvc-6/introduction 示例项目运行良好。现在我正在尝试创建自己的骨架项目如下: > 使用AS

  • 在ASP.NET MVC5中,您可以抛出一个带有HTTP代码的HttpException,这将设置如下所示的响应: ASP.NET核心中不存在。等价代码是什么?

  • .NET核心和ASP.NET核心到底有什么区别?

  • 最近,我使用Visual Studio2017(15.6.3)从头创建了一个ASP.NET MVC核心项目。我发现了常见的JavaScript框架: 引导 jQuery jQuery-验证 jQuery-validation-unobtrusive 但不幸的是,所有的鲍尔支持都没有了!没有、和“管理Bower包...”再: 如果不推荐使用bower包,请不要将此问题复制到如何在Visual Stu