You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用PagedListPager时出现CS1929错误,求解决办法

解决CS1929错误:IHtmlHelper不包含PagedListPager定义

问题根源

PagedList.Mvc提供的PagedListPager扩展方法是针对非泛型的HtmlHelper类型,而你的视图中@Html是泛型的IHtmlHelper<IPagedList>,导致扩展方法无法匹配。

解决方案

1. 强制转换为非泛型HtmlHelper

修改调用代码,将泛型IHtmlHelper强制转为非泛型HtmlHelper,直接适配扩展方法要求:

@((HtmlHelper)Html).PagedListPager(Model, page => Url.Action("Index", new { page }))

2. 全局注册PagedList命名空间(可选)

如果不想每个视图都手动添加@using语句,可在Views/web.config的<namespaces>节点下配置全局引用,所有视图将自动识别相关命名空间:

<system.web.webPages.razor>
  <pages pageBaseType="System.Web.Mvc.WebViewPage">
    <namespaces>
      <add namespace="PagedList.Mvc"/>
      <add namespace="PagedList"/>
    </namespaces>
  </pages>
</system.web.webPages.razor>

3. 确认包版本与模型配置

  • 若使用旧版PagedList.Mvc,它仅支持非泛型HtmlHelper,强制转换是最直接的解决方式;若想适配泛型类型,可尝试升级至最新稳定版。
  • 确保视图模型声明正确:
    @model IPagedList<YourEntityType>
    
    控制器返回的是IPagedList实例:
    public ActionResult Index(int? page)
    {
        var dataSource = // 你的数据源查询逻辑
        int pageSize = 10;
        int pageNumber = page ?? 1;
        return View(dataSource.ToPagedList(pageNumber, pageSize));
    }
    

内容的提问来源于stack exchange,提问作者Yuu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 19:17:08