asp.net-mvc-3 - ASP MVC 3 防止页面刷新时多次插入

标签 asp.net-mvc-3

假设我有一个简单的 ASP MVC3 list Controller ,带有 add 方法和 id 参数。

列表:

http://localhost/MVCAPP/ListFoo/

添加方法

http://localhost/MVCAPP/ListFoo/Add?id=1

在我的 Add 方法中,我使用添加的元素更新我的 Viewmodel,然后调用:

return View("ListFoo", viewModel);

显示更新后的列表,一切都差不多了。

问题是,这样返回,地址栏中的URL仍然是

http://localhost/MVCAPP/ListFoo/Add?id=1

如果用户按 F5,则会添加另一个项目,我想阻止这种情况发生。

我知道我可以在 Controller 中过滤掉这种行为,但我宁愿将浏览器地址栏重定向到:

http://localhost/MVCAPP/ListFoo/

你知道有什么方法可以做到这一点吗?

顺便说一句,我不确定尝试控制地址栏内容是看待这个问题的正确方法...

最佳答案

使用Action.RedirectToAction method在 Controller 中完成工作后重定向客户端。

除此之外,您还可以使用 POST 作为 FormMethod 将数据发送到服务器。

关于asp.net-mvc-3 - ASP MVC 3 防止页面刷新时多次插入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9788090/

相关文章:

html - 设置可选的禁用属性

asp.net-mvc-3 - CheckBox 的 MV3 重复查询字符串值( bool 值为真、假)

c# - System.Web.Mvc.HtmlHelper' 不包含 CheckBox 的定义

asp.net-mvc-3 - 如果 Controller.OnAuthorization() 返回 void 那么我如何拒绝访问?

.net - 领域驱动设计 : Is this overkill?

asp.net-mvc-3 - MVC3 内联网成员(member)资格

asp.net-mvc-3 - ASP.NET MVC 布局

visual-studio-2010 - 如何为 RedirectToAction 创建扩展?

asp.net-mvc-3 - 返回 View 时ViewData为空

c# - 从数据库模型填充 View 模型但出现对象引用错误