一个反复出现的问题是,在用户执行某些操作(例如点击“返回…”链接或保存正在编辑的记录后,将重定向到前一页.
以前,当我需要知道要返回的页面时,我将为我当前的视图提供一个returnURL参数.
http://blah.com/account/edit/1?returnURL="account/index"
这不是一个非常干净的处理这种情况的方法,因为有时返回URL包含必须包含在URL中的搜索字符串等参数.
http://blah.com/account/edit/1?returnURL="account/index?search="searchTerm""
此外,当用户可以使用returnURL返回到页面之前,用户可以转到另一页面时,这会导致问题,因为您必须通过所有访问页面传递returnURL.
简单地调用浏览器的Back功能也不是很充分,因为您可能希望刷新页面,例如显示您刚刚保存在上一页的编辑.
所以我的问题是,有没有人找到一个聪明的方式来处理这种情况,特别是在一个MVC环境中?
注意:我正在使用ASP.NET MVC,所以如果可能的话我想要回答这个,但是任何想法都是受欢迎的.