我使用netTcpBinding和流將文件從一臺服務器發送到另一臺服務器,如this codeproject文章中所述,據我所知在wcf中,當我們想發送流時,我們應該創建並返回它作爲消息合約,問題是如何完成文件發送?因爲我想從收件箱中移動文件時,文件發送完成保障如何在流式傳輸結束後刪除文件wcf
回答
我在這個blog找到很好的解決方案,如果有人需要它在未來
OperationContext clientContext = OperationContext.Current;
clientContext.OperationCompleted += new EventHandler(delegate(object sender, EventArgs args)
{
if (fileStream != null)
fileStream.Dispose();
});
當第二個服務器完成從第一臺服務器接收文件到發件箱,它可能然後調用另一個Web服務方法,以確認它得到了文件。此時,您可以將文件從收件箱移至發件箱,並保證其他服務器收到該文件。
好,但如果第一個服務器獲取文件的東西,失去了試圖索要移動到收件箱中,當連接?比客戶端將收到文件兩次 – 2011-02-28 06:37:32
你是正確的,在設計可靠的分佈式系統時,你需要考慮到所有類型的場景中的信息丟失,服務器宕機等你將不得不拿出一個設計,手柄這種情況並確保不會創建重複的文件。我不相信WCF中有任何東西可以幫助你自動做到這一點。 – Saeed 2011-02-28 11:47:57
我想我找到了解決方案,檢查我的答案 – 2011-03-01 06:29:38
- 1. WCF流式文件傳輸.NET 4
- 2. 從WCF服務流式傳輸文件
- 3. xamarin.ios mp3從url流式傳輸結束
- 4. 流式傳輸JPEG,檢測JPEG結束
- 5. 如何通過WCF傳輸文件後關閉流?
- 6. 從Sharepoint WCF流式傳輸
- 7. 如何在Django中流式傳輸文件的最後幾行?
- 8. 如何流式傳輸MP3文件(iOS)
- 9. 如何流式傳輸WAV文件?
- 10. 無法刪除已創建和流式傳輸的文件
- 11. 如何在流式傳輸中刪除HashMap的元素(lambda)
- 12. 使用WCF流式傳輸上傳文件,從流式傳輸中讀取微小的文件
- 13. 如何使用SQL文件流式傳輸win32 API並支持WCF流式傳輸
- 14. 通過HTTP通過WCF流式傳輸文件上傳IOException
- 15. WCF流媒體文件傳輸
- 16. 何時使用WCF流式傳輸
- 17. 流式傳輸wav文件
- 18. 流式傳輸MP4文件
- 19. WCF流式傳輸/分塊上傳?
- 20. 如何在使用WCF流式傳輸大文件時顯示反饋
- 21. 上傳後刪除文件
- 22. 如何在結束MVC應用程序時刪除文件?
- 23. Tomcat 6:如何在Web方法調用結束後刪除臨時文件?
- 24. Mochiweb流式傳輸結果
- 25. .xlsx在流式傳輸事件後的文件腐蝕
- 26. 文件傳輸/ WCF
- 27. 在Django中流式傳輸CSV文件
- 28. 在Node.js中流式傳輸大文件
- 29. 在zope中流式傳輸xls文件
- 30. 通過WCF流式傳輸100個文件?
這是我可以跨越的解決方案,並且一開始看起來很棒。但是,它會執行客戶端是否已成功複製流。如果你只是試圖處理資源,這不是問題(事實上,它是完美的)。但是,如果您移動文件,或者更糟糕的是刪除文件,則會出現問題。 – Jeff 2011-05-27 21:27:32
你是對的@Jeff,我發現了後者,你知道另一種方法嗎? – 2011-05-28 10:55:06