下载XML客户端,首先从Session获取数据

本文关键字:Session 获取 数据 XML 客户端 下载 | 更新日期: 2023-09-27 18:06:14

我的目标是让用户能够下载当前存储在Session中的一些信息。会话中有多个键/值对,我想让用户作为一个XML文件下载。

我正在使用的控件有一个客户端'onClick'事件暴露。我计划调用PageMethod从Session中提取我想要的数据,并将该数据返回给客户端。

我在MVC中看到了一个非常干净的实现,我想知道这个干净的实现在ASP中是否可能。NET AJAX也一样。如果没有,我想知道最好的方法是什么。

在MVC/JavaScript中,我看到这样的东西:

location.href = "../WorkOrders/Export/" + workOrderID;
public ActionResult Export(int id)
{
    WorkOrderPdfExporter exporter = new WorkOrderPdfExporter();
    byte[] buffer = exporter.Export(id);
    return File(buffer, "application/pdf", String.Format("workorder#{0}.pdf", id));
}

这个导出方法返回一个FileContentResult,这是一个MVC的东西。我想知道这样的东西是否存在于ASP。. NET AJAX,以及该数据类型是否适合返回Page Method。

如果不是,我应该在这里做什么?我正在考虑创建一个字典,将相关的会话对象粘贴到这个字典中,将其序列化为XML(我实现了一个Serializable dictionary类),…然后试图返回XML供下载?

感谢您的宝贵时间。

下载XML客户端,首先从Session获取数据

您可以直接写入HttpResponse.OutputStream -您也需要设置正确的ContentType

OutputStream的代码示例相当冗长(主要是处理动态创建的图像),但是如果忽略这些部分,您将拥有一个基本函数,需要对其进行少量修改以供使用。