如何在流式传输wcf结束后删除文件

时间:2011-02-27 20:34:41

标签: c# wcf wcf-streaming

我使用netTcpBinding和streaming将文件从一个服务器发送到另一个服务器,如this codeproject文章中所述,据我所知在wcf中,当我们想要发送流时,我们应该创建并将其作为消息合同返回,问题是如何完成文件发送的?因为我希望在文件发送保证完成时将文件从收件箱移动到发件箱

2 个答案:

答案 0 :(得分:5)

如果有人将来需要它,我在blog找到了很好的解决方案

OperationContext clientContext = OperationContext.Current;
clientContext.OperationCompleted += new EventHandler(delegate(object sender, EventArgs args)
   {
      if (fileStream != null)
         fileStream.Dispose();
   });

答案 1 :(得分:2)

当第二台服务器完成从第一台服务器接收文件后,它可以调用另一个Web服务方法来确认它已获得该文件。此时,您可以将文件从收件箱移动到发件箱,并保证其他服务器已收到它。