Silverlight:将文件流式传输到新的HTML浏览器窗口以提示用户“打开或另存为...”?

时间:2011-08-25 18:39:28

标签: c# silverlight file silverlight-4.0

如果能够完成,最有效的方法是将文件(字节数组)从Silverlight浏览器内应用程序流式传输或发送到新的HTML窗口,以便提示用户打开与默认OS应用程序关联的文件,或保存文件?

我正在使用保存文件对话框,允许他们在需要时保存文件,但我要求如果用户在我的应用程序中单击该文件,标准操作系统“打开/保存”对话框应该流行。

2 个答案:

答案 0 :(得分:2)

由于文件在服务器上,为什么不让浏览器处理它: -

 HtmlPage.Window.Navigate(urlToFile, "_blank");

答案 1 :(得分:1)

听起来您的要求适用于桌面应用,而不是Silverlight应用。曾经看过ClickOnce

我能想到的最合理的方法是将文件发送到远程服务器,然后将用户定向到该服务器。这可能不是你想要的。

然后可以选择打开套接字并有效地将Silverlight应用程序转换为服务器。然后打开一个新的浏览器窗口并将其指向localhost:portnum。但是,您需要实现浏览器理解的一些协议,如FTP或HTTP。这似乎有点荒唐。