C# WCF:关闭通道使流保持打开状态

C# WCF:关闭通道使流保持打开状态,c#,wcf,channelfactory,C#,Wcf,Channelfactory,我从WCF服务获得一个流。我使用这个流从中获取数据并将其复制到另一个流 IServerService serverService = channelFactory.CreateChannel(); Stream serverStream = serverService.GetStream(); serverStream.CopyTo(localStream); 那很好 现在我有一个场景,在这个场景中,我需要在某个中断时中断进程。我试着打电话 channelFactory.Close()和cha

我从WCF服务获得一个流。我使用这个流从中获取数据并将其复制到另一个流

IServerService serverService = channelFactory.CreateChannel();
Stream serverStream = serverService.GetStream();
serverStream.CopyTo(localStream);
那很好

现在我有一个场景,在这个场景中,我需要在某个中断时中断进程。我试着打电话
channelFactory.Close()
channelFactory.Abort()
停止复制。但它不起作用。服务器流仍然将数据复制到本地流

我想知道为什么这不起作用,以及我如何才能强制关闭流。 (我知道我可以关闭服务器流来停止它,但我想关闭ChannelFactory或通道)

还可以关闭ChannelFactory,使其立即关闭所有频道和流吗?

谢谢。

除非您使用的是异步调用,否则您不能这样做。参考本文,我将关闭流并运行异常。谢谢。