smd*_*ger 2 asp.net asp.net-mvc asp.net-mvc-2
我正在为我的项目使用ASP.NET MVC2.我想在操作后发送用户确认消息.
理想情况下:用户点击带有查询字符串的链接(即删除条目的链接)控制器执行链接所说的内容,创建成功消息,并使用RedirectToAction从URL中删除查询字符串.新操作显示成功消息.
有人建议我使用模型错误来做到这一点,但我认为这不会在这种情况下起作用.
谢谢.
你可以使用TempData:
public ActionResult Index()
{
string message = TempData["message"] as string ?? string.Empty;
// send the message as model so that the view can print it out
return View("index", message);
}
[HttpPost]
public ActionResult DoWork()
{
// do some work
TempData["message"] = "Work done!";
return RedirectToAction("index");
}
Run Code Online (Sandbox Code Playgroud)
内部TempData使用会话以保留信息,但在下一个请求后会自动清除,因此它仅在存储后的下一个请求中可用.