在我的HomeController中,我有一个处理来自主页的表单提交的函数。
[HttpPost]
public ActionResult Index(string message){
// Do something
return View();
}
我正在使用此值并将其存储在数据库中。那里的一切都很好。但我注意到的是,在我提交初始值后,我刷新页面,然后重新提交具有相同值的表单。每次刷新页面时,都会向DB提交一条消息。
思考?我还没有看到其他人在线遇到这个问题。
答案 0 :(得分:3)
您需要遵循Post/Redirect/Get设计模式。
在处理数据后,它基本上会重定向到另一个页面。
例如,
[HttpPost]
public ActionResult Index(string message){
if (ModelState.IsValid)
{
// Save data to database.
return RedirectToAction("Index", "Home");
}
// If we got this far, something failed, redisplay form
return View();
}