填充了ViewData之后,是否可以从控制器中的多个操作方法使用该ViewData集合,而无需重新填充它?
发布于 2010-03-24 10:39:58
不,ViewData
不是这样使用的。它只是控制器操作和视图之间的临时共享存储。它允许控制器将一些模型传递给视图。从设计的角度来看,ViewData
不应该由控制器操作读取,它应该只被写入。
如果您想在多个请求之间存储对象,可以使用Session
对象,或者使用TempData
(它在内部使用Session)来存储两个请求之间的数据。
发布于 2010-03-24 10:45:14
是的,如果您在调用之间将数据存储在一些持久存储中(例如,会话或某种缓存),则可以。尽管我不推荐这种方法,但对于那些到处都需要且不经常更改的长期数据来说,这种方法有时是必要的。
https://stackoverflow.com/questions/2506911
复制