我一直在尝试使用PagedList包来获取索引视图的分页.一切进展顺利,在控制器级别一切正常,每页只显示5条记录,并根据查询字符串显示相应的页面.
我的问题是在视图中.我将@Model更改为PagedList.IPagedList可以访问Model.HasNextPage其他属性,但现在@Html.DisplayNameFor(model => model.ItemName)已经不再有效了.我收到此错误:
PagedList.IPagedList<Dossier.Models.Item>' does not contain a definition for 'ItemName' and no extension method 'ItemName' accepting a first argument of type 'PagedList.IPagedList<Dossier.Models.Item>' could be found (are you missing a using directive or an assembly reference?)
以下是视图的相关部分:
@model PagedList.IPagedList<Dossier.Models.Item>
@using Dossier.Models.Item
...
<th>
@Html.DisplayNameFor(model => model.ItemName)
</th>
Run Code Online (Sandbox Code Playgroud)
似乎IPagedList与DisplayNameFor()不兼容.知道为什么会这样,以及我如何解决它?我知道我可以手动输入列名,但我希望以后可以在模型中保留(并且可以更改)该信息.