【问题标题】:asp.net mvc: Paging - Setting Prev/Next page values in ActionLinks?asp.net mvc:分页 - 在 ActionLinks 中设置上一页/下一页值?
【发布时间】:2009-12-10 01:25:59
【问题描述】:

我正在尝试实现一些简单的分页,基于How do I do pagination in ASP.NET MVC?

分页工作正常。

但是,我现在正在尝试创建上一个和下一个链接,但不知道如何访问参数:

我的路线如下:

  routes.MapRoute(
      "Name",
      "Controller/ActionName/{pageID}",
      new { controller = "Controller", action = "ActionName" , pageID = 0 },
      new { pageID = @"\d*"}
      );

我的下一个链接看起来像:

   <%=Html.ActionLink("next page", "ActionName", "Controller", new {pageID = pageID + 1 }, null) %>

我得到的错误是:

 Compiler Error Message: CS0103: The name 'pageID' does not exist in the current context

我应该如何创建上一个/下一个链接(或者,在这种情况下,只是下一个)?

【问题讨论】:

    标签: asp.net-mvc pagination actionlink


    【解决方案1】:

    错误发生在第二个 PageID 中

    new {pageID = pageID + 1 }, ...
    

    如果您想以这种方式引用 pageID,则必须将其作为模型的一部分传入。

    看看下面的教程:

    NerdDinner 第 8 步:寻呼支持
    http://nerddinnerbook.s3.amazonaws.com/Part8.htm

    【讨论】:

    • 是否仍然可以通过强类型视图使用这种方法?我收到一条错误消息,提示“System.Collections.Generic.IEnumerable”不包含“HasPreviousPage”的定义
    • 仔细查看 NerdDinner 使用的模型。里面有不止一个物体。
    • 所以归根结底是我不能做我想做的事。我对使用 ViewData 没有真正的问题,我只是希望有一种简单的方法来访问路由变量。谢谢。
    • 要访问路由变量,请使用this.ViewContext.RouteDatastackoverflow.com/questions/1134776/…
    猜你喜欢
    • 2020-07-10
    • 2010-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多