2012-06-05 71 views
0

我創建一個基於Silverlight的電子郵件系統,我使用WCF讀取電子郵件,然後將數據傳遞給SL應用程序,我在另一個測試Web項目中使用以下代碼將字節數組保存到客戶端上的文件中系統(電子郵件附件),它工作正常,但是當我想在我的WCF(myservice.svc.cs)中使用它們時,出現此錯誤:「名稱'Response'在當前上下文中不存在」,什麼是這裏錯了嗎?有可能在服務中使用Response對象嗎?響應對象在WCF中不可用?

 Response.AppendHeader("Content-Disposition", String.Format("attachment; filename={0}", messages[i].Attachments[j].FileName)); 
        Response.BinaryWrite(messages[i].Attachments[j].FileData); 

我該如何保存附件?

回答

1

不,你通常不會在WCF中使用HttpResponse對象(雖然我不是100%確定你是否可以在可以在REST服務中使用它)。如果要將文件發送到客戶端,則需要實現返回字節數組或文件流的服務操作。這post可能會幫助你。

+0

謝謝,你的意思是我應該只是返回我的字節數組,而不是寫入流?我在Silverlight中使用這個服務,那麼我怎樣才能使用這個返回的字節數組來保存我的文件在SL中? –

+1

@Ali_dotNet你可以使用[SaveFileDialog](http://msdn.microsoft.com/en-us/library/system.windows.controls.savefiledialog(v = vs.95).aspx)類,它可以給你要寫入的文件流,並且可以將數組的內容寫入該文件流。 –

+0

謝謝,我怎麼能給它我的字節數組? –