日期:2014-05-20  浏览次数:20855 次

当 ViewState["dt"] 很大的时候,用什么方式保存比较好
以下代码,因为 ViewState["dt"] 体积大,确实让ADSL用户刷新页面慢,我想放在cookies,但是它只能储存字符串,如果用Session保存,又担心用户多,又占用服务器资源, 如果不用 ViewState["dt"] 保存,每次去查询SQL SERVER, 又担心查询次数太多,占用太多服务器资源, 大家有没有好的办法呢?

//求得下拉框的参数
  Maticsoft.BLL.Apm bll = new Maticsoft.BLL.Apm();
  DataTable idt;
  idt = bll.GetAllList().Tables[0];
  ViewState["dt"] = idt;
  //加工点
  DataView dv1 = new DataView(idt);
  dv1.RowFilter = ("parentcode='35'");
  txtga02.DataSource = dv1;
  txtga02.DataTextField = "cinvcname";
  txtga02.DataValueField = "no";
  txtga02.DataBind();
  txtga02.Items.Insert(0, new ListItem("", ""));
  txtga02.SelectedIndex = 0;

------解决方案--------------------
当年我也这么写过。
几十个表的数据啊。。
真想不到有什么好办法。
需求就是必须页面全部加载这些一点关联没有但是却又有一个关联的数据。。
我也跟对方说了。这个需求完全扯淡。因为实际项目中和实际生活中这个东西是不存在的。
加载出来了。。。
因为内网使用。所以不在乎。。
------解决方案--------------------
消减adsl上传带宽小导致响应慢,只能放数据库了。

没有什么值得担心消耗资源。

网络传输消耗得更多。