首页新闻找找看学习计划

asp.net中excel下载的问题,涉及到用户控件传值给ashx

0
悬赏园豆:5 [待解决问题]

本人在项目中遇到一个问题,特来这里向各位大虾求救。
问题是这样的,现在一个web程序,页面default.aspx里会加载一个用户控件,用户控件页面上有个按钮,然后用户控件是通过
placeholder加载到default.aspx页面里的,包含在updatepanel里。

然后在用户控件里的button事件里,通过读取数据库数据,生成了Excel,数据保存到一个byte数组,叫reportbytes,然后
通过scriptmanager.registstarupscript来新开一个.ashx文件来处理excel下载,在ashx里的ProcessData函数里
根据Session["report"]读取之前用户控件里生成的reportbytes数组,下载excel到客户端。原来程序是通过Session来存储byte数组来在用户控件和ashx文件里传递的,但是今天突然出现,byte数组的字节数过大,导致ashx里读取的Session值为null(具体原因还未知,估计和IIS server有关系).现在想知道,如果不用Session来存储这个字节数值的话,还有别的办法,可以把这个自己数组从用户控件里传递到ashx里吗?不胜感谢。

山涧清泉的主页 山涧清泉 | 初学一级 | 园豆:197
提问于:2017-05-15 21:26
< >
分享
所有回答(3)
0

可以使用缓存来存储

劳义 | 园豆:210 (菜鸟二级) | 2017-05-16 14:05
0

加个redis服务器,数据放redis。一个请求对应1个key,找到对应的byte数组

wolf.lin | 园豆:186 (初学一级) | 2017-05-16 15:55
0

h5的话可以用localStorage来储存

赋值:localStorage.setItem("这里是键", "这里是值");
取值:localStorage.getItem("这里是键");
删除:localStorage.removeItem("这里是键");

llwuuzz | 园豆:204 (菜鸟二级) | 2017-05-16 16:36
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册