Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/335.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 从WCF服务流式传输文件_C#_Asp.net_Wcf_Httpresponse - Fatal编程技术网

C# 从WCF服务流式传输文件

C# 从WCF服务流式传输文件,c#,asp.net,wcf,httpresponse,C#,Asp.net,Wcf,Httpresponse,我试图弄清楚如何从一个典型网站前端的web服务流式传输文件(通常是PDF)。PDF实际上并不存在,而是由报表生成器(想想Crystal、Telerik Reporting等)动态创建的 今天,我可以直接从网站上执行此操作,方法是执行响应.Clear(),然后设置ContentType并添加相应的内容配置标题,最后执行响应.BinaryWrite(…) 但是,WCF服务(在本例中为IIS托管)没有响应对象。我已经尝试将响应对象作为参数从我的网页中传入,但我甚至无法启动WCF服务,因为HttpRes

我试图弄清楚如何从一个典型网站前端的web服务流式传输文件(通常是PDF)。PDF实际上并不存在,而是由报表生成器(想想Crystal、Telerik Reporting等)动态创建的

今天,我可以直接从网站上执行此操作,方法是执行
响应.Clear()
,然后设置ContentType并添加相应的
内容配置
标题,最后执行
响应.BinaryWrite(…)

但是,WCF服务(在本例中为IIS托管)没有响应对象。我已经尝试将
响应
对象作为参数从我的网页中传入,但我甚至无法启动WCF服务,因为HttpResponse无法序列化


我找错树了吗?有没有更好的方法来看待这个问题?我们希望它出现在一个通用的web服务中,因为我们有更多的网站需要这样做,我们不想维护代码的多个副本来完成这项工作。

您可以将文件作为byte[]数组发送

或者您可以将此文件作为流参数发送(使用流模式)

是,但将其流到什么位置?我没有包含要使用的流的响应对象。对不起,如果我遗漏了什么。