2012-10-30 195 views
3

我想弄清楚如何從一個典型Web站點前端的Web服務中傳輸文件(通常是PDF)。這些PDF並非物理存在,而是由報告生成器(如水晶,Telerik報告等)實時創建(請考慮Crystal,Telerik Reporting等)從WCF服務流式傳輸文件

我可以直接從網站做到這一點,通過執行Response.Clear(),然後設置ContentType並添加適當的Content-Disposition表頭,最後跟着一個Response.BinaryWrite(...)

但是,WCF服務(本例中託管的IIS)沒有Response對象。我試過從我的網頁傳入Response作爲參數,但我甚至無法啓動WCF服務,因爲HttpResponse無法序列化。

我吠叫錯了樹嗎?有沒有更好的方法來看待這個?我們希望在一個通用的Web服務中使用它,因爲我們的更多網站需要這樣做,而且我們不希望維護代碼的多個副本來執行此操作。

回答

0

您可以將您的文件作爲byte []數組發送。

或者您也可以發送該文件作爲流參數(使用流式傳輸模式)

+0

是的,但是流它_what_?我沒有包含要使用的流的Response對象。對不起,如果我在這裏失蹤的東西。 – Jim