Comment puis-je transmettre des parameters à une action à l’aide de Html.Action () dans ASP.NET MVC?

J’ai utilisé Html.Action("ActionName", "ControllerName") pour appeler des actions enfants sur les contrôleurs sans avoir besoin d’avoir la vue dans Views \ Shared. Cela a fonctionné très bien pour afficher des choses comme des informations de session ou de cookie.

Au lieu de simplement accéder aux cookies, j’aimerais transmettre des parameters supplémentaires à Html.Action("ActionName", "ControllerName") afin que l’action puisse exécuter un code différent en fonction des données transmises à la vue d’origine.

Dois-je utiliser une méthode différente pour transmettre des parameters à une action enfant dans un autre contrôleur? Comment pourrait-on accomplir cela?

Vous pouvez spécifier des données supplémentaires dans la propriété RouteValues ​​comme ceci.

 Html.Action("Controller","Name", new { id = 1 }) 

Pour append un peu à cette question, j’utilise ASP.Net MVC 5 et j’ai réussi à y parvenir avec ce code:

 @Html.Action("foo",new {parameter1=1})