表格提交页面刷新

时间:2016-06-10 19:00:02

标签: asp.net-mvc

在我的HomeController中,我有一个处理来自主页的表单提交的函数。

[HttpPost]
public ActionResult Index(string message){

   // Do something

   return View();
}

我正在使用此值并将其存储在数据库中。那里的一切都很好。但我注意到的是,在我提交初始值后,我刷新页面,然后重新提交具有相同值的表单。每次刷新页面时,都会向DB提交一条消息。

思考?我还没有看到其他人在线遇到这个问题。

1 个答案:

答案 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();
}