我使用netTcpBinding和streaming将文件从一个服务器发送到另一个服务器,如this codeproject文章中所述,据我所知在wcf中,当我们想要发送流时,我们应该创建并将其作为消息合同返回,问题是如何完成文件发送的?因为我希望在文件发送保证完成时将文件从收件箱移动到发件箱
答案 0 :(得分:5)
如果有人将来需要它,我在blog找到了很好的解决方案
OperationContext clientContext = OperationContext.Current;
clientContext.OperationCompleted += new EventHandler(delegate(object sender, EventArgs args)
{
if (fileStream != null)
fileStream.Dispose();
});
答案 1 :(得分:2)
当第二台服务器完成从第一台服务器接收文件后,它可以调用另一个Web服务方法来确认它已获得该文件。此时,您可以将文件从收件箱移动到发件箱,并保证其他服务器已收到它。