0

SL3 DataGrid 有一个下载 XLS 列,用于以 Excel 格式下载记录的详细信息。单击“下载”按钮时,首先会提示用户使用 SaveFileDialog 选择文件,然后进行 WCF 调用以获取所选记录的详细信息。使用第 3 方 Excel 助手库,将记录添加到 Excel 工作表并保存文件。

问题是当 Session 超时时(比如由于空闲),点击功能非常好,提示用户指定要保存的文件,然后重定向到登录页面(正如预期的那样,因为我们正在处理未验证的错误等)。

但是,用户现在会产生一种幻觉,即下载了一个空的 Excel 文件。

那么,有没有办法从 Silverlight 页面检测会话是否超时? 从而仅在 Session 可用时才显示 SaveFileDialog。

4

1 回答 1

0

您可能可以将检测信号从 Silverlight 发送到 ASP.NET。这也是 Ajax 世界中非常常见的问题。由于您也可以在 Silverlight 中使用 Javascript,因此您可能需要检查此解决方案Keeping ASP.NET Session Open / Alive

如果您不喜欢 JS,那么您可以使用 HttpWebRequest 或 WebClient 与 asp.net 进行通信...

于 2011-08-02T04:44:58.653 回答