在aspx页面上,我必须加载一个带有来自数据库的值的DropDown。在页面生命周期中使数据保持价值的最正确位置是什么?
Cahce对象? 会议? 视图状态?
更多详情:
答案 0 :(得分:2)
如果获取的数据很昂贵则缓存,并且对所有用户都是相同的。
会话,如果数据的获取成本很高并且取决于用户
如果获得的数据便宜,那就没什么了。
ViewState,如果数据位于管理页面或流量无关紧要的地方(内部网站,很少访问的页面)。虽然200行可能有点太多了。
答案 1 :(得分:1)
如果数据不经常更改,则缓存它是一个好主意。如果它经常变化,那么我就不会(因为你经常清理和重新加载缓存,这是一种浪费)。
每个会话或在视图状态中保存它并不能为您带来太多的性能提升,因为这些都是在用户的请求中提供的。我讨厌viewstate,但如果你不能像我上面提到的那样缓存,那么viewstate是最合适的地方。