![]() |
1
2
我认为您需要使用带有RouteValueDictionary签名的RedirectToAction。您要重定向到的方法需要能够从控制器上的ValueProvider中提取值。它可能看起来像:
编辑 使用一个过滤器模型作为方法的参数实际上可能会更容易。你只需要得到并发布你的操作的版本。
然后将过滤参数(按名称)、操作(“人员”)和控制器存储在数据库中,用于报告。重定向结果将使用get并定向到peopleDisplay方法,而peopleDisplay方法又使用正确的参数调用people方法。从表单中发布直接调用People方法。使用两种方法可以使用CSRF预防机制。您可能可以使用tempdata中的标志来确保只有在需要限制对get操作的访问时,才通过重定向机制调用get操作。 结束编辑 另一种选择是简单地存储所使用的视图,而不是执行重定向,只渲染适当的视图。您需要考虑的一件事是,执行重定向最终将得到一个包含所有参数的URL,而呈现视图将使该URL保持独立,并且只显示与创建报表时使用的URL相同的视图。 |
![]() |
2
0
您可以使用RedirectToAction方法发布301重定向到任何控制器上的特定操作方法,以及路由值:
如果这些值类似于:
当然,我能看到的最直接的问题是,当控制器/操作方法随着时间的推移而改变时,报告数据将无效。但你可能已经想到了。 |