【发布时间】:2023-01-19 21:23:54
【问题描述】:
在用户输入时,我从云中获取字节数组(各种格式的文档),然后将此字节数组保存为包含格式的文档。代码在桌面客户端和 Web 客户端上运行(应用程序在服务器上运行,方法从该工具的 Web 应用程序调用)
我有 .NET Framework (4.8) 项目。项目是 BI 工具 Spotfire 的扩展。正如我提到的,项目的源代码在桌面客户端和 Web 客户端上运行。在桌面客户端中,我将标准功能与 SaveFileDialog 类一起使用,并且工作正常。对于 Web 客户端,我遇到了问题,因为我无法打开对话框并且无法将文件保存到本地路径,因为它在服务器和 Web 应用程序上运行。
SaveFileDialog save = new SaveFileDialog();
save.FileName = documentName;
switch (documentInfo.type)
{
case MIME_PDF:
save.Filter = "PDF(*.pdf)|*.pdf";
break;
case MIME_DOC:
save.Filter = "Word document|*.doc";
break;
case MIME_DOCX:
save.Filter = "DOCX document|*.docx";
break;
case MIME_XLS:
save.Filter = "XLS document|*.xls";
break;
case MIME_XLSX:
save.Filter = "XLSX document|*.xlsx";
break;
}
if (save.ShowDialog() == DialogResult.OK)
{
byte[] bytes = AWSInvoker.GetS3Document(documentInfo.id);
File.WriteAllBytes(save.FileName, bytes);));
}
这是桌面客户端的代码。如果它在 Web 客户端上运行,我需要做什么: -> 获取字节 -> 从 Web 浏览器下载到本地存储 -> 我必须避免将内容存储在服务器存储上,而是直接从 Web 浏览器运行下载
该应用程序不是 ASP.NET,我无法在 JavaScript 或任何其他前端框架中捕获此功能
【问题讨论】:
标签: c# arrays .net webclient savefiledialog