我怎样才能使用ASP.NET MVC中的Html.Action()传递参数给一个Action?

我一直在使用Html.Action("ActionName", "ControllerName")来跨控制器调用子操作,而不需要在Views \ Shared中拥有视图。 这对于显示诸如会话或cookie信息的事物已经很好。

我不想只访问cookie,而是希望将其他parameter passing给Html.Action("ActionName", "ControllerName")以便操作可以根据传递给原始视图的数据执行不同的代码。

我应该使用不同的方法将parameter passing给另一个控制器中的子动作吗? 如何做到这一点?

您可以像这样在RouteValues属性中指定其他数据。

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

在这个问题上添加一点,我使用ASP.Net MVC 5,我可以成功实现这个代码:

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