保存异步 asmx Web 服务返回的文件
在发生事件(例如单击按钮)时,我的 Silverlight 应用程序应发出请求文件的异步 Web 服务调用(使用文件名,例如 Document1.pdf)。 Web 服务 (asmx) 将文件作为字节数组返回。
如何让用户将此文件保存在本地所需位置,就像进行普通文件下载一样。
On an event (say a button click) my Silverlight application should issue an async web service call requesting for the file (with the filename, say Document1.pdf). The webservice (asmx) returns the file as a byte array.
How to let the user save this file locally at a desired location as he would for a normal file download.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
Silverlight 3.0 及更高版本支持 SaveFileDialog 类,只要您已经从流中返回了字节数组,您就可以使用该类。
有一个很好的例子(尽管您可能必须将其适合另一个模型[例如,如果您使用 MVVM]),但结果是相同的。您可以允许用户在连续异步接收到 byte[] 数组中的完整文件后选择一个文件并保存字节流。
在 Silverlight 中使用 SaveFileDialog
Silverlight 3.0 and above support a SaveFileDialog class that you can use provided you already have your array of bytes back from your stream.
There is a good example (although you may have to fit it to another model [like if you use MVVM]), but the result is the same. You can allow the user to choose a file and save a byte stream after receiving a complete file in a byte[] array asynchronously on succession.
Using the SaveFileDialog in Silverlight