在MVC2中将消息传递给用户

smd*_*ger 2 asp.net asp.net-mvc asp.net-mvc-2

我正在为我的项目使用ASP.NET MVC2.我想在操作后发送用户确认消息.

理想情况下:用户点击带有查询字符串的链接(即删除条目的链接)控制器执行链接所说的内容,创建成功消息,并使用RedirectToAction从URL中删除查询字符串.新操作显示成功消息.

有人建议我使用模型错误来做到这一点,但我认为这不会在这种情况下起作用.

谢谢.

Dar*_*rov 7

你可以使用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使用会话以保留信息,但在下一个请求后会自动清除,因此它仅在存储后的下一个请求中可用.