当它是子类的一部分时发出返回流

时间:2015-02-27 16:37:39

标签: c# wcf stream

我有一个WCF方法:

public Stream GetFile(string systemName, string version, string type)
{
    //Code omitted for brevity
    return File.Open(path, FileMode.Open, FileAccess.Read);
}

这样可以返回一个我可以保存在另一端的有效文件。

我正在尝试将方法更改为:

public GetFileStreamResult GetFile(string systemName, string version, string type)
{
    //Code omitted for brevity
    var fs = File.Open(path, FileMode.Open, FileAccess.Read);
    return new GetFileStreamResult
    {
        Stream = fs,
        Checksum = fs.GenerateCheckSum()
    };
}

GetFileStreamResult的位置:

[DataContract]
public class GetFileStreamResult
{
    [DataMember]
    public Stream Stream { get; set; }

    [DataMember]
    public string Checksum { get; set; }
}

当我这样做时,我收到以下错误:

  

接收HTTP响应时发生错误   http://localhost:64175/UpdateService.svc。这可能是由于   服务端点绑定不使用HTTP协议。这也可以   是由于服务器中止了HTTP请求上下文   (可能由于服务关闭)。请参阅服务器日志了解更多   的信息。

我在网上找到关于返回Stream的例子只返回流,而不是包含流的对象,所以任何帮助都会受到赞赏。

0 个答案:

没有答案