WCF学习中的迷惑
在《WCF服务编程》中关于单向操作与会话服务的描述:
WCF允许开发者设计一个具有单向操作的会话契约:
[ServiceContract(SessionMode = SessionMode.Required)]
public interface IMyContract
{
[OperationContract(IsOneWay = true)]
void MyMethod();
}
public interface IMyContract
{
[OperationContract(IsOneWay = true)]
void MyMethod();
}
如果客户端发出一个单向调用,在执行方法的同时会关闭代理,然后阻塞客户端直到操作完成。
这句话从字面了解,应该是在客户端发出调用以后,会关闭代理,并且在服务执行操作期间会阻塞客户端。
但是经过我得测试没有这个问题,测试代码如下。
服务端:
客户端:
结果如下图:
这说明了:
1、代理没有关闭,
2客户端没有阻塞。
我现在不清楚是我对这段话的理解偏差还是别的原因。困扰了我一上午了,希望各位大师大侠能指点下迷津。

浙公网安备 33010602011771号