我有一个应用程序,它搜索存储在数据库中的图像并显示结果(带分页)。目前,每次加载下一页时,我们都会重新加载整个站点。因此,我们的网站明显缓慢。
我正在调查iStockPhoto并看到只加载了图片内容,而且他们的表现比我的好得多。
我正在使用Solr(对我而言似乎很慢......我失踪了什么?我认为Solr应该很快。哈哈)来存储和检索图像。
SO !!
我向你们提出的问题是,如果我想在下一页被击中时只允许刷新分页内容,我还有很多工作要做吗?例如更改控制器,视图和等?
非常感谢你!
这是我的代码:
<table>
<tr>
<td>...</td>
<td valign="top" style="width: 100%">
<div id="imageList" class="imageList">
@Html.Partial("AssetManagerSelection", new FacetsWidget
{
SelectedFacetNodes = Model.Search.SelectedFacetNodes
})
@{
var pagerInfo = new PaginationInfo
{
PageUrl = Url.SetParameter("page", "!0"),
CurrentPage = Model.Search.PageIndex,
PageSize = Model.Search.PageSize,
TotalItemCount = Model.TotalCount,
};
}
@Html.Partial("AssetManagerPager", pagerInfo)
@if (pagerInfo.CurrentPage <= pagerInfo.LastPage)
{
<ul class="thumbnailsList">
@{var thumbnailIndex = 1;}
@foreach (var item in Model.MatchingItems)
{
var thumbnailClass = string.Empty;
if (Model.Search.ThumbnailSize == CacheLevel.DetailsView)
{
thumbnailClass = "thumbnailImagesS";
}
else
{
thumbnailClass = "thumbnailImagesM";
}
<li>
<div class="@thumbnailClass">
@Html.Partial("ItemThumbnail", item)
</div>
@{thumbnailIndex++;}
</li>
}
</ul>
@Html.Partial("AssetManagerPager", pagerInfo)
}
</div>
</td>
</tr>