目标:自己写通信!
通信的过程:就是两个终结点一个通道,实际上客户端也是有一个终结点的,客户端会在这两个终结点之间建立一个通道,然后把对服务端服务的调用封装成消息沿通道送出,服务器端获得消息后在服务器端建立服务对象,然后执行操作,将返回值再封装成消息发给客户端。
步骤:
(1)建立客户端,这里还是控制台应用程序。
(2)添加System.ServiceModel引用。
(3)编写客户端的服务协定。服务协定是元数据中最重要的部分(还可能有数据协定等),协定接口是服务器和客户端共同持有的,客户端依靠协定来创建通道,然后在通道上调用协定的方法,方法的实现,客户端是不知道的。客户端只知道方法签名和返回值(即接口)。
这部分的代码应该很熟悉了:
[ServiceContract]
public interface IHelloWCF
{
[OperationContract]
string PHelloWCF();
}
(4)使用通道工厂:ChannelFactory
Syste