如何通过Web服务提供Excel电子表格

时间:2009-04-20 09:31:17

标签: asp.net vb.net web-services

是否可以通过Web服务提供Excel电子表格。我认为不是因为ASP.NET Web服务似乎只处理可以使用excel二进制格式的Serializable元素(我认为)。如果Excel以XML格式保存,这会有效吗?

我有一些会通过电子邮件发送的报告,但已经提出请求,允许通过Web服务提取这些报告。

这可以实现吗?

3 个答案:

答案 0 :(得分:7)

是的。您可以在服务器上打开excel文件作为内存流,并将它们作为byte []传输到客户端/使用者。然后,客户端可以将文件流保存回本地计算机。

MS有一篇关于它的知识库文章。

http://support.microsoft.com/kb/318425

答案 1 :(得分:0)

我不会尝试。 Excel电子表格具有与格式化相关的大量开销,等等。我很想通过网络发送数据。如果它必须是接收端的电子表格,那么更多的编码可以格式化数据。

另一种替代方法是让电子表格文件可供直接下载。您托管Web服务的事实意味着您正在使用某种Web服务器,因此WebClient.DownloadFile应该可用。然后,您的Web服务可以提供最新文件的URL。

*编辑 - 如果您仍然愿意,Eoin Campbell的答案将允许您选择首选路线。

答案 2 :(得分:0)

您可以使用base64或其他一些替代方法将excel文件转换为mime编码字符串来序列化。

同样的方式附件嵌入在电子邮件中。

当然客户端需要知道它需要一个mime编码的字符串,以及要使用的解码类型