0

如果有更多结果,我只想在我的部分视图上显示 2 个结果并显示更多链接。我将显示所有结果的查询是:

[ChildActionOnly]
public ActionResult GetContacts(int id)
{
    var contacts = from c in db.CustomerContact
                   where c.CustomerID == id
                   orderby c.Surname
                   select c;

    return PartialView("_GetContacts", contacts);
}

我需要有两个查询,一个来计算结果的数量吗?

想用jquery通过扩展div来显示更多的结果。

如果有人能指出我正确的方向,将不胜感激。

4

2 回答 2

1

根据您的查询通常返回的元素数量,最好使用查询仅检索两个元素并在用户请求时使用不同的查询显示其余元素。

为避免始终加载所有结果,您可以在链接上使用对服务器的 AJAX 调用来显示更多信息。

但是,如果您的查询通常返回很少的元素,您可以只使用一个查询来加载所有元素并通过显示更多链接单击显示两个或更多。

于 2012-10-01T09:48:47.263 回答
0

你可以这样做:

var contacts = ....
return contacts.OrderBy(c => c.curname)
    .Skip((CurrentPage - 1) * pageSize)
    .Take(pageSize);

您必须在此处设置参数pagesizecurrentPage对于前两个项目,传递pageSize = 2currentPage = 1更多项目(每次 2 个项目)传递当前页面 = 2,依此类推。

于 2012-10-01T09:52:28.610 回答