我正在编辑可变长度列表并使用ViewData来传递填充DropDownList的信息。我使用此处描述的方法编辑这些列表: http://blog.stevensanderson.com/2010/01/28/editing-a-variable-length-list-aspnet-mvc-2-style/
此下拉列表的数据来自数据库。由于ViewData不能跨请求,我目前每次都会对数据库进行新的查询。当ModelState无效并且重新显示表单时,也会发生这种情况。当然,即使对于这样的轻量级查询,这也不太理想。
只要用户正在使用该可变长度列表编辑页面,如何跨请求保留该查询中的信息?
答案 0 :(得分:0)
如果列表对用户是唯一的,您可以将其存储在Session
中。如果它在所有用户之间共享,您可以将其存储在Cache
中。在任何一种情况下,存储的列表都可以并且将会过期,因此您必须准备好重新查询它。