检测ASP.NET MVC 2中的页面刷新/ F5键

Mic*_*ael 1 asp.net postback refresh asp.net-mvc-2

如何检测处理回发的控制器上的页面刷新/ F5键推?我需要区分用户按下两个按钮之一(例如,Next,Previous)和F5 /页面刷新发生的时间.

我的方案是一个单向导页面,在按下"下一步"或"上一步"按钮的每次用户调用之间显示不同的内容.我遇到的错误是当用户刷新页面/按下F5键时,浏览器将请求重新发送回控制器,后者作为回发处理,FormCollection类型用于查找"submitButton"键并获取其值(例如,"下一步","发送").这部分模仿了Dylan Beattie的帖子如何在ASP.NET MVC框架中处理多个提交按钮?.

也许我正在尝试将MVC 2弯曲到不应该去的地方,但我想继续使用当前的设计,因为底层数据库驱动显示内容和顺序.这允许我们在不修改显示内容的代码的情况下将新内容添加到数据库中.

谢谢,迈克尔

Fra*_*čik 5

推荐的方法是使用PRG模式 - Post-Redirect-Get.含义:提交后,将客户端重定向到索引或什么,导致仅在用户点击F5时重新加载索引,而不是再次发布数据.

请查看:http://en.wikipedia.org/wiki/Post/Redirect/Get

这个:http://www.google.sk/search?q = prg + mvc + asp.net