SHORT:
Как заставить контроллер возвращать текущее представление или просто ничего не делать?
LONG:
У меня есть частичное представление, где я создал imageslider.
Он содержит ссылку, которая отправляет запрос контроллеру для получения следующего изображения (используя ajax).
Контроллер выбирает следующее изображение, сохраняет его в ViewData и отправляет обратно частичное представление (изображение выше).
Теперь, что я делаю сегодня, так это то, что когда контроллер достигает последнего изображения, он повторно возвращает то же самое изображение (путем его повторного получения), но все еще создает новое представление, то есть клиент / браузер повторно анализирует «то же самое» данные.
Это кажется неоптимальным.
Я хотел бы, чтобы, когда контроллер достиг последнего изображения, он просто ничего не делал.
Если я возвращаю ноль, то представление обновляется с пустым содержимым.
Я хочу, чтобы представление / клиент / браузер сохраняли все, что у него было, а контроллер просто ничего не делал.
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult GetNextImage(...)
{
if(Request.IsAjaxRequest())
{
if(CURRENT_IMAGE != LAST_IMAGE)
{
Image image = GetNextImage(...);
var partialViewResult = new PartialViewResult();
partialViewResult.ViewName = "ImageSlide";
partialViewResult.ViewData.Model = image;
return partialViewResult;
}
else
{
// DO NOTHING, HOW?
}
}
return RedirectToAction("Error", "Home");
}