关于PagedList.Mvc的疑惑,求解!

zhaocheng761115 2013-11-02 11:00:56
PagedList.Mvc版本4.5

直接上代码:
Controller:
        public ActionResult Index(int? ipage)
{
var _category = db.Category.Where(c => c.CategoryID > 0).OrderBy(c => c.CategoryID);
int pageSize = 5;
int pageNumber = (ipage ?? 1);
return View(_category.ToPagedList(pageNumber, pageSize));
}

View.cshtml:
@model PagedList.IPagedList<MvcBalance.Models.Categorys>
@using PagedList.Mvc;

<link href="~/Content/PagedList.css" rel="stylesheet" type="text/css" />
@{
ViewBag.Title = "Index";
}

<h2>Category Setting</h2>

<p>
@Html.ActionLink("Create New", "Create",null, new { @class = "hrefbutton" })
</p>
<table class="table_list">
<tr>
<th>
@Html.DisplayNameFor(model=>model.CategoryName) </th>
<th>
@*@Html.DisplayNameFor(model => model.CategoryDescription)*@


编译器错误消息: CS1061: “PagedList.IPagedList<MvcBalance.Models.Categorys>”不包含“CategoryName”的定义,并且找不到可接受类型为“PagedList.IPagedList<MvcBalance.Models.Categorys>”的第一个参数的扩展方法“CategoryName”(是否缺少 using 指令或程序集引用?)
请大侠指点这是为何?
...全文
675 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
webdiyer 2014-02-28
  • 打赏
  • 举报
回复
因为这个接口或类没有对应的扩展方法,我的MvcPager就可以: http://www.webdiyer.com/mvcpager/ 实现DisplayNameFor扩展方法的源代码在这里: http://www.webdiyer.com/mvcpager/sourcecode/displaynameforextension/
SAP_EX 2014-02-27
  • 打赏
  • 举报
回复
只是显示标题。 <th> @Html.DisplayNameFor(model=>model.First().CategoryName) </th>
ltcszk 2014-02-26
  • 打赏
  • 举报
回复
引用 4 楼 SAP_EX 的回复:
在View里不用IPagedList似乎是一种方法,但是“正宗”的方法应该是版主说的在table的标题里加上first(),把@Html.DisplayNameFor(model=>model.CategoryName)改为@Html.DisplayNameFor(model=>model.First().CategoryName)。
@model PagedList.IPagedList<MvcBalance.Models.Categorys>
@using PagedList.Mvc;
  ......
<table class="table_list">
    <tr>
        <th>
          @Html.DisplayNameFor(model=>model.First().CategoryName)       </th>
        <th>
你取了5条数据,只显示一条?
SAP_EX 2014-02-26
  • 打赏
  • 举报
回复
在View里不用IPagedList似乎是一种方法,但是“正宗”的方法应该是版主说的在table的标题里加上first(),把@Html.DisplayNameFor(model=>model.CategoryName)改为@Html.DisplayNameFor(model=>model.First().CategoryName)。
@model PagedList.IPagedList<MvcBalance.Models.Categorys>
@using PagedList.Mvc;
  ......
<table class="table_list">
    <tr>
        <th>
          @Html.DisplayNameFor(model=>model.First().CategoryName)       </th>
        <th>
moondreamyou 2014-02-25
  • 打赏
  • 举报
回复
要添加PagedList引用。
feiyun0112 2014-02-25
  • 打赏
  • 举报
回复
你传入的Model是一个List,下面又不循环?

<th>@Html.DisplayNameFor(model=>model.First().CategoryName) </th>

*****************************************************************************
签名档: http://feiyun0112.cnblogs.com/
SAP_EX 2014-02-25
  • 打赏
  • 举报
回复
在 View 里不需要引用:@model PagedList.IPagedList<MvcBalance.Models.Categorys> 将View改为如下:
@model IEnumerable<MvcBalance.Models.Categorys>
@using PagedList.Mvc;
......

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧