[研究]ASP.NET, X.PagedList.10.2.1 升級 X.PagedList.10.5.7,編譯出錯
2024-11-07
官方網站
https://andrew.gubskiy.com/projects/item/open-source
https://www.nuget.org/packages/X.PagedList/10.2.1
https://www.nuget.org/packages/X.PagedList/10.5.7
********************************************************************************
【PagedList.10.2.1】
Default.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs"
Inherits="WebApplication1.Default" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
</head>
<body>
<form id="form1" runat="server">
<asp:GridView ID="gvData" runat="server" AutoGenerateColumns="true"></asp:GridView>
<br />
<asp:Repeater ID="pager" runat="server" OnItemCommand="pager_ItemCommand">
<ItemTemplate>
<asp:LinkButton ID="lnkPage" runat="server" CommandName="Page"
CommandArgument='<%# Container.DataItem %>'
Text='<%# Container.DataItem %>'></asp:LinkButton>
</ItemTemplate>
</asp:Repeater>
</form>
</body>
</html>
|
Default.aspx.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web.UI.WebControls;
using X.PagedList;
namespace WebApplication1
{
public partial class Default : System.Web.UI.Page
{
private const int PageSize = 10; // 每頁顯示的項目數量
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindData(1); // 預設顯示第 1 頁
}
}
private void BindData(int pageNumber)
{
// 模擬資料來源
List<string> data = Enumerable.Range(1, 100).Select(i => "Item " + i).ToList();
// 使用 X.PagedList 進行分頁
var pagedData = data.ToPagedList(pageNumber, PageSize);
// 綁定分頁資料至 GridView
gvData.DataSource = pagedData;
gvData.DataBind();
// 設定分頁按鈕
pager.DataSource = Enumerable.Range(1, pagedData.PageCount);
pager.DataBind();
// 儲存目前頁碼
ViewState["CurrentPage"] = pageNumber;
}
protected void pager_ItemCommand(object source, System.Web.UI.WebControls.RepeaterCommandEventArgs e)
{
if (e.CommandName == "Page")
{
int pageNumber = Convert.ToInt32(e.CommandArgument);
BindData(pageNumber);
}
}
}
}
|
實際測試OK
********************************************************************************
更新:
X.PagedList.10.2.1 -> X.PagedList.10.5.7
Microsoft.CodeDom.Providers.DotNetCompilerPlatform.2.0.1 -> Microsoft.CodeDom.Providers.DotNetCompilerPlatform.4.1.0
嚴重性 程式碼 說明 專案 檔案 行 隱藏項目狀態
錯誤 CS1061 'List<string>' 未包含 'ToPagedList' 的定義,也找不到可接受類型 'List<string>' 第一個引數的可存取擴充方法 'ToPagedList' (是否遺漏 using 指示詞或組件參考?) WebApplication1 C:\CodeTemp3\WebApplication1\WebApplication1\Default.aspx.cs 27 作用中
********************************************************************************
【X.PagedList.10.5.7】
測試把
using X.PagedList; |
換成
using X.PagedList.Extensions; |
執行正常。
(完)
相關



沒有留言:
張貼留言