asp.net-mvc-3 – ViewBag/ViewData生命周期

前端之家收集整理的这篇文章主要介绍了asp.net-mvc-3 – ViewBag/ViewData生命周期前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我看到很多关于何时使用ViewBag / ViewData VS viewmodel的帖子,但我没有能够找到ViewBag的生命周期的解释。

例如,我有一个控制器中有两个Action方法

// POST: /MyModel/Edit/5
[HttpPost]
public ActionResult Edit(MyModel _mymodel){}

// GET: /MyModel/Edit/5
public ActionResult Edit(int id){}

如果我在GET操作方法的ViewBag中设置一些值,以设置一些表单标签,那么当他们用户单击“提交”按钮,并且表单通过HTTP POST发布回服务器时,ViewBag值不再在POST操作方法

有人可以解释(或提供参考好的文章)ViewBag / ViewData的生命周期?

解决方法

您放入ViewBag / ViewData中的数据仅在您填充它的请求的生命周期内可用。 MVC没有后备。如果你需要一些东西来坚持超过单个请求,你应该使用Session。

这里有一篇关于ViewData,ViewBag和TempData之间的区别的文章http://rachelappel.com/when-to-use-viewbag-viewdata-or-tempdata-in-asp.net-mvc-3-applications

猜你在找的asp.Net相关文章