使用Ajax的MvcPaging
我想在局部视图中使用MvcPaging。我有一个搜索页面,我需要分页的结果。到目前为止,只显示结果的第一页-当我试图转到第2页时,控制台中出现了一个500错误,但什么也没有发生 以下是来自控制器的两个操作:使用Ajax的MvcPaging,ajax,asp.net-mvc,paging,Ajax,Asp.net Mvc,Paging,我想在局部视图中使用MvcPaging。我有一个搜索页面,我需要分页的结果。到目前为止,只显示结果的第一页-当我试图转到第2页时,控制台中出现了一个500错误,但什么也没有发生 以下是来自控制器的两个操作: public PartialViewResult SearchResults(string lat, string lng, double? dist) { if (Request.IsAjaxRequest()) { stri
public PartialViewResult SearchResults(string lat, string lng, double? dist)
{
if (Request.IsAjaxRequest())
{
string address = Request["address"];
string latitude = lat;
string longitude = lng;
GeoCoordinate coord = new GeoCoordinate(Double.Parse(latitude, CultureInfo.InvariantCulture), Double.Parse(longitude, CultureInfo.InvariantCulture));
IQueryable<Restaurants> near = (from r in _db.Restaurants select r);
results = new List<Restaurants>();
foreach (Restaurants restaurant in near)
{
double latBD = (double)restaurant.Latitude;
double lngDB = (double)restaurant.Longitude;
if (new GeoCoordinate(latBD, lngDB).GetDistanceTo(coord) <= dist * 1000)
{
results.Add(restaurant);
}
}
return PartialView("_SearchResult", results.ToPagedList(0, 2));
}
return PartialView("Search");
}
public ActionResult PaginationAjax(int? page)
{
int currentPageIndex = page.HasValue ? page.Value - 1 : 0;
return PartialView("_SearchResult", results.ToPagedList(currentPageIndex, 2));
}
你能添加你收到的500错误的内容吗?@AnthonyShaw现在看看你能显示实际的500错误吗,这是控制台输出,表明有500错误。如果你直接打开那个url,你会看到什么错误?@AnthonyShaw好的,我现在看到问题了。在PaginationAjax操作中,结果似乎为null。有没有想过如何解决这个问题而不必查询数据库两次?
@model IPagedList<Restaurants>
@using MvcPaging
foreach (var item in Model)
{
<blockquote>
<h3><a href="Details?Id=@item.Id" target="_blank">@item.Name</a></h3>
</blockquote>
}
<div class="pager">
@Html.Pager(Model.PageSize, Model.PageNumber, Model.TotalItemCount, new AjaxOptions { UpdateTargetId = "searchResults" }).Options(o => o.Action("PaginationAjax"))
</div>
GET http://localhost/TakeASeat/Restaurants/PaginationAjax?page=2&X-Requested-With=XMLHttpRequest&_=1431698681795 500 (Internal Server Error)
jQuery.ajaxTransport.send @ jquery-2.1.3.js:8625
jQuery.extend.ajax @ jquery-2.1.3.js:8161
asyncRequest @ jquery.unobtrusive-ajax.js:128
(anonymous function) @ jquery.unobtrusive-ajax.js:138
jQuery.event.dispatch @ jquery-2.1.3.js:4430
jQuery.event.add.elemData.handle @ jquery-2.1.3.js:4116