更改Stream的命名空间

时间:2010-05-25 09:44:57

标签: c# web-services

我用方法

获得了asmx
[Webmethod]
public Ssytem.IO.Stream GetStream(string path)
{
...
}

和winforms应用程序,它具有对此Web服务的Web引用。

我无法在winforms应用程序上执行某些操作:

var myStream= (System.IO.Stream)client.GetStream(path);

因为我

Cannot cast expression "MyWinformsApp.MyService.Stream" to Stream.

为什么?

2 个答案:

答案 0 :(得分:1)

您无法通过WebMethod返回Stream。如果要返回文件中的数据,有许多选项,但最直接的可能是:

  • 读取文件内容并对其进行base64编码。
  • 返回base64编码数据。
  • 在客户端解码数据并将其保存回文件。

答案 1 :(得分:0)

因为MyWinformsApp.MyService.Stream不是来自System.IO.Stream?您被正确禁止将对象转换为不是对象。