SL3 DataGrid有一个下载XLS列,用于以Excel格式下载记录的详细信息。在单击“下载”按钮时,首先会提示用户使用SaveFileDialog选择文件,然后进行WCF调用以获取所选记录的详细信息。使用第三方excel助手库,将记录添加到excel工作表中,并保存文件。
问题是,当会话超时时(例如,由于懒惰),单击功能非常好,提示用户指定要保存的文件,然后重定向到登录页面(正如预期的那样,因为我们正在处理未经身份验证的错误等)。
但是,用户现在误以为下载了一个空的Excel文件。
因此,如果会话超时了?是否有一种方法从Silverlight页面检测?,从而仅在会话可用时显示SaveFileDialog。
发布于 2011-08-02 04:44:58
您可能可以将心跳从Silverlight发送到ASP.NET,这也是Ajax世界中非常常见的问题。由于您也可以在Silverlight中使用Javascript,所以您可能需要检查此解决方案Keeping ASP.NET Session Open / Alive。
如果您不喜欢JS,那么可以使用HttpWebRequest或WebClient与asp.net通信。
https://stackoverflow.com/questions/6841525
复制相似问题