我是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)'
答案 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.PagedListExtensions
或System.Web.Mvc.Pagination
答案 1 :(得分:0)
我能够通过首先将我的数据集合转换为IEnumerable,然后调用PagedList类的方法来解决这个问题。
var csr = (System.Collections.Generic.IEnumerable<CaseSearchResult>)Model.CaseSearchResults;
var results = csr.ToPagedList<CaseSearchResult>(pageNum, pageSize);
但是,当我点击寻呼机时,我仍然没有得到第二页的结果,所以我不确定发生了什么。我尝试将其从局部视图中取出并将其包含在主窗体中。接下来,我将尝试以Ajax形式包含搜索结果。