如何将 List(Of objects) - 订单 - 从结果页面传递到详细信息页面

how to pass List(Of objects) - orders - from results page to details page

我所处的上下文如下:

我有一个页面接收来自用户的日期范围,然后用户单击按钮和从 Web 服务检索的订单列表显示在网格视图上,其中一个列是将订单结果页面链接到订单详细信息页面的超链接,在查询字符串上传递订单 ID。

这是检索订单的方式:

Public Sub GetOrdersByDate(ByVal StartDate As Date, ByVal EndDate As Date, ByVal StrEnv As String)
    Dim client As New OrderService.OrderClient
    _items = New List(Of Order)

    Try
        client.Endpoint.Address = New EndpointAddress(Globals.AppSettings("OrderEnv" & "_" & StrEnv))

        Dim returnedServiceOrder As List(Of OrderService.OrderDataHeaderModel)
        returnedServiceOrder = client.GetOrdersByDateRange(siteKey, StartDate, EndDate)
        copyOrderServiceModelToUIModel(returnedServiceOrder)
    Catch ex As Exception
        HttpContext.Current.Response.Write(ex.Message)
    Finally
        client.Close()
    End Try
End Sub

这是从超链接访问第二页的方式:

DirectCast(e.Row.FindControl("lblOrderID"), HyperLink).NavigateUrl = Page.ResolveUrl("~/order-review.aspx?order_id=" & e.Row.DataItem.OrderID)

我需要为订单详细信息页面添加分页,并在第一页中显示的一组订单上向后移动。

我不确定如何将订单集传递到订单详细信息页面,以便我可以添加下一个和上一个按钮来更改订单详细信息页面上显示的订单。

实现这一目标的常用方法有哪些?

非常感谢

这是主要/详细功能的示例:http://aspsnippets.com/demos/483/

但是我的问题是,如何从母版上的结果添加到详细信息视图中?

Web 服务结果(List(Of objects)),您可以将该结果存储在会话中。

在下一页上,您可以使用您在查询字符串中传递的 OrderID 过滤来自会话的结果。

您将拥有一个订单对象。它应该有订单项目 属性,这是一个 List(Of orderItem)。您可以将该列表绑定到 GridView 并在 GridView 上实现分页。

1.On 第一页将 Web 服务结果存储到会话中。

Dim returnedServiceOrder As List(Of OrderService.OrderDataHeaderModel)
returnedServiceOrder = client.GetOrdersByDateRange(siteKey, StartDate, EndDate)
Session("ServiceResult") = serviceResult

2.Retrieve 由下一页的会话产生。

Dim returnedServiceOrder As List(Of OrderService.OrderDataHeaderModel)
returnedServiceOrder = CType(Session("ServiceResult"), List(Of OrderService.OrderDataHeaderModel))