我有一个操作,如果它满足某些条件,我需要将其发布到另一个操作上,但是当我转到下一个操作时,我无法保留表单数据。
接收动作接受FormCollection,发送动作
目前,我正在返回RedirectToAction(“action”,“controller”,form)。我可以确定表单变量在重定向之前有键(form.HasKeys()= true)。
但是当按下操作时,FormCollection为空(form.HasKeys()= false)。
有什么想法吗?是否有我错过的'PostToAction'方法?
仅供参考:我正在使用ASP.NET MVC Beta。非常感谢!
修改:对于遇到此问题的人,请查看PRG Pattern。这是我想要做的实际术语,也可以实现漂亮的网址。
答案 0 :(得分:2)
我会重构两个控制器并将公共代码放入帮助程序或公共基类中。这样,两个控制器中的动作就可以委托给公共代码。
答案 1 :(得分:2)
当调用RedirectToAction时,它将进行HTTP重定向,并且它将对另一个动作URL进行GET。如果你需要重用另一个控制器中的代码,我会按照他们的建议去做,将公共移动到BaseController或业务服务,并将这两个操作委托给它。
此链接可能有所帮助: