【发布时间】:2023-03-15 10:00:01
【问题描述】:
我有一个列表页面,其中包含与DataPager 控件关联的ListView 控件。
我还实现了ASP.Net WebForms URL routing。最初,当用户访问该页面时,URL 就像
www.domain.com/entity/list
当我点击DataPager 页面按钮时,我希望URL 像
www.domain.com/entity/list/{Page_Number}
我已经处理了 DataPager_PagePropertiesChanging 事件,在该事件中我得到了当前页面索引,如下所示
protected void lvRestaurants_PagePropertiesChanging(object sender, PagePropertiesChangingEventArgs e)
{
CurrentPage = ((RestaurantPager.StartRowIndex) / RestaurantPager.MaximumRows) + 1;
//Response.RedirectToRoute("browserestaurantbypage", new { id_pg = CurrentPage });
//RestaurantPager.GetRouteUrl("browserestaurantbypage", new { id_pg = CurrentPage - 1 });
Response.RedirectToRoute("browserestaurantbypage", new { id_pg = CurrentPage});
}
是否可以在上述事件中调用Response.RedirectToRoute,因为我在 Firefox 中收到页面未正确重定向错误。
我的 DataPager 控件如下所示
<asp:DataPager ID="RestaurantPager" runat="server" QueryStringField='<%#Eval("ID_Restaurant") %>'
PagedControlID="lvRestaurants" PageSize="10">
<Fields>
<asp:NextPreviousPagerField PreviousPageText="« previous" ShowFirstPageButton="false"
ShowNextPageButton="False" ShowPreviousPageButton="true" />
<asp:NumericPagerField ButtonType="Link" CurrentPageLabelCssClass="current" ButtonCount="4" />
<asp:NextPreviousPagerField NextPageText="Next »" ShowLastPageButton="false"
ShowNextPageButton="true" ShowPreviousPageButton="False" />
</Fields>
</asp:DataPager>
请您指导我如何实现这一目标。如果有任何不清楚的地方,请告诉我。
【问题讨论】:
标签: asp.net listview asp.net-routing datapager