行中的错误“返回视图(students.ToPagedList(pageNumber,pageSize));”

时间:2013-05-24 15:32:36

标签: c# asp.net-mvc

我是MVC的新手。这个错误意味着什么?

The call is ambiguous between the following methods or properties:
'PagedList.PagedListExtensions.ToPagedList<ContosoUniversity.Models.Student>
(System.Linq.IQueryable<ContosoUniversity.Models.Student>, int, int)' and
'System.Web.Mvc.Pagination.ToPagedList<ContosoUniversity.Models.Student>
(System.Linq.IQueryable<ContosoUniversity.Models.Student>, int, int)'

2 个答案:

答案 0 :(得分:1)

这些方法具有相同的原型,即.ToPagedList(System.Linq.IQueryable, int, int),但它们不属于同一个包。

您必须使用全名来确定要使用的两种方法中的哪一种,即PagedList.PagedListExtensions.ToPagedList(System.Linq.IQueryable, int, int)System.Web.Mvc.Pagination.ToPagedList(System.Linq.IQueryable, int, int);或者导入正确的包,即PagedList.PagedListExtensionsSystem.Web.Mvc.Pagination

答案 1 :(得分:0)

我能够通过首先将我的数据集合转换为IEnumerable,然后调用PagedList类的方法来解决这个问题。

var csr = (System.Collections.Generic.IEnumerable<CaseSearchResult>)Model.CaseSearchResults;
var results = csr.ToPagedList<CaseSearchResult>(pageNum, pageSize);

但是,当我点击寻呼机时,我仍然没有得到第二页的结果,所以我不确定发生了什么。我尝试将其从局部视图中取出并将其包含在主窗体中。接下来,我将尝试以Ajax形式包含搜索结果。