将参数列表从一个控制器传递到另一个控制器的最佳方式

将参数列表从一个控制器传递到另一个控制器的最佳方式

问题描述:

在我的视图中,我有一个员工列表和每个旁边的复选框。 用户选择一个或多个员工,当他点击提交时,他导航到下一个页面,在那里他看到每个选定员工的详细信息。 所以我想从一个控制器发送员工号码列表到下一个。 我可以做到这一点的一个方法是使用Session对象。但那是最好的方法吗?将参数列表从一个控制器传递到另一个控制器的最佳方式

+1

这可以在ASP.NET MVC中直接使用。只需发出一个同名复选框的列表,并让接收操作获得一个可枚举的ID。 – bzlm 2011-01-10 18:27:13

想到这个,而不是有一个视图发送参数到另一个控制器。在这种情况下,从员工列表视图到细节控制器。更改列表视图上的表单,以便将选定的员工ID发送到详细信息控制器上的方法。在详细信息控制器中,您可以查询数据库以获取每个给定员工ID所需的任何详细信息。

而不是传递员工,您可以将选定的员工id列表发布到详细信息控制器,然后从存储库中获取相应的详细信息。

+0

我不认为你可以这样做。默认情况下,您无法通过重定向从POST传递列表/数组到GET。 – 2011-01-10 15:24:54

+0

嗯,你可以通过ID作为逗号分隔参数,然后使用自定义模型联编程序或直接指示窗体发送一个GET或POST请求到最后的行动,这将显示细节。这样你就不需要再次重定向了。 – 2011-01-10 15:29:34