Sur ASP.NET MVC J'utilise l'aide HTML
Html.BeginForm("ActionName", "Controller", FormMethod.Post);
Mais j'ai besoin de poster sur : /controller/action/23434
Comment faire passer l'identifiant ?
Sur ASP.NET MVC J'utilise l'aide HTML
Html.BeginForm("ActionName", "Controller", FormMethod.Post);
Mais j'ai besoin de poster sur : /controller/action/23434
Comment faire passer l'identifiant ?
Celle de Matt devrait convenir. Si vous passez toujours dans FormMethod.Post
Cependant, vous devez le faire comme ceci :
Html.BeginForm("action","controller", new { Id = 12345 }, FormMethod.Post);
En inversant le troisième et le quatrième paramètre, on obtient le Id
étant traité comme un attribut au lieu d'une valeur de route.
Html.BeginForm("action", "controller", new { id = ViewBag.FileID },
FormMethod.Post, new { id = "feedbackform" })
Quant à la chaîne de recherche, ?type=golden
je ne sais pas comment faire. Bien sûr, un querysting est un get, et sape le but entier de FormMethod.Post
. Je veux dire, tu pourrais utiliser FormMethod.Get
Si vous voulez des données de type chaîne de caractères, c'est peut-être ce que vous recherchez.
En outre, vous pouvez éviter html.beginform
et faire la querystring, get + post, manuellement avec une balise de formulaire.
Troisièmement, si vous utilisez le formulaire, vous pouvez créer un champ caché :
[input type=hidden name="type" value="golden"]
Ensuite, lorsque l'on appuie sur le bouton d'envoi, la valeur est transmise correctement comme variable de formulaire.
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.