Lorsque vous essayez de générer un itinéraire, comme avec BeginForm
, MVC fera de son mieux pour inclure les éléments dont vous pourriez avoir besoin.
Si vous êtes sur domain.com/Home/Index/b9f88f80-f31f-4144-9066-55384c9f1cfc
et que vous utilisez le code que vous avez fourni, le formulaire sera généré avec les valeurs d’action, de contrôleur et de route à mesure qu’il les trouve.
controller / action / id /Home / Index / b9f88f80-f31f-4144-9066-55384c9f1cfc
Une façon de contourner ce problème est de forcer id à ne rien être (comme une chaîne vide).
Observer:
@using (Html.BeginForm(null, null, new { @id = ssortingng.Empty }, FormMethod.Post, new { @id = "Id" })) { }
Le new { @id = ssortingng.Empty }
est un object anonyme qui représente les valeurs de la route.
En raison de System.Web.Mvc.Html (dans System.Web.Mvc.dll ), le formulaire de début est défini comme suit: –
BeginForm (ce HtmlHelper htmlHelper, chaîne actionName, chaîne
controllerName, object routeValues, méthode FormMethod, object htmlAtsortingbutes)
Signifie comme ceci: Html.BeginForm (chaîne actionName, chaîne controllerName, object routeValues, méthode FormMethod, object htmlAtsortingbutes)
Donc, cela a fonctionné pour moi dans MVC 4
@using (Html.BeginForm(null, null, new { @id = ssortingng.Empty }, FormMethod.Post, new { @id = "trainingForm" })) { }