SHORT:
Comment faire pour qu'un contrôleur retourne la vue en cours ou simplement ne fasse rien?COMMENT? Contrôleur renvoyer rien/affichage en cours
LONGUE:
J'ai une vue partielle où j'ai créé un imagelider. Il contient un lien qui envoie une requête à un contrôleur pour obtenir l'image suivante (en utilisant ajax). Le contrôleur récupère l'image suivante, la stocke dans ViewData et renvoie une vue partielle (celle ci-dessus). Maintenant, ce que je fais aujourd'hui est que quand le contrôleur atteint la dernière image, il retourne la même image (en la récupérant), mais crée quand même une nouvelle vue, c'est-à-dire que le client/navigateur réexamine les "mêmes" données.
Cela semble quelque peu non-optimal.
Ce que je voudrais faire, c'est que lorsque le contrôleur atteint la dernière image, il devrait simplement ne rien faire.
Si je renvoie null, la vue est mise à jour avec des contenus vides.
Je veux que la vue/client/navigateur conserve tout ce qu'il a et le contrôleur pour ne rien faire.
[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");
}
Tout comme ce que je cherche, mais pas encore de réponse. Le dessous est une page rafraîchissante, que je n'aime même pas. comme mon javascript/jquery a mis à jour l'interface utilisateur et il n'y a rien du côté serveur pour mettre à jour sur l'interface utilisateur qui attend juste un indicateur pour voir si mon contrôleur réussit à exécuter une tâche ou non. Si oui, je mets à jour l'interface utilisateur avec javascript/jquery, sinon encore mettre à jour certaine chose (comme une coche) avec seulement. Tout le reste du contenu de la page J'aime rester tel quel sans effet de rafraîchissement qui tue les modifications javascript pour les actions de l'utilisateur. Les ci-dessous ans. ne fonctionne pas car il renvoie une vue vide. – AKS