下载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供下载?
感谢您的宝贵时间。
您可以直接写入HttpResponse.OutputStream
-您也需要设置正确的ContentType
。
OutputStream
的代码示例相当冗长(主要是处理动态创建的图像),但是如果忽略这些部分,您将拥有一个基本函数,需要对其进行少量修改以供使用。