garderez ce aussi simple possible: -l'action ASP.Net MVC formulaire en retour Voir
j'ai un un contrôleur qui retourne soit viewA ou viewB - par exemple
[HttpPost]
public ActionResult ViewA(BlahModel model)
{
if (isTrue)
return View(model);
else
return View("ViewB", model);
}
...
Le problème est que je viewB a une forme sur elle. Et ce qui se passe, c'est que si elle est renvoyée, l'attribut action de la balise pointe toujours vers ViewA.
/MyControllerName/ViewA
Je pensais que je pouvais faire quelque chose comme ceci:
using (Html.BeginForm("ViewB","MyControllerName"))
Mais cela renvoie l'URL suivante dans le balisage:
/ViewB?action=ViewB&controller=MyControllerName
Comment puis-je obtenir le code HTML Helper pour revenir correctement le suivant?
/MyControllerName/ViewB
Un grand merci
MISE À JOUR
Ce fut en effet causé par un héritage laid routage du moment où le projet était à mi-chemin entre WebForms et MVC
Quel HTML est rendu dans ViewB? Est-ce que la forme dans ViewB a action = "get" –
Que fait "<% = Url.Action (" ViewB "," MyControllerName ")%>' générer? – Charlino