在上篇中,我们利用通道工厂ChannelFactory<>类创建了通道,实现了和服务端的通信。今天使用ClientBase<>类来实现同样的功能。
ClientBase<>类也是一个泛型类,接受服务协定作为泛型参数,与ChannelFactory<>不同的是,这个类是一个基类,即抽象类,是不能实例化成对象直接使用的,我们需要自己写一个类来继承这个类,我们新写的类实例化出来就是客户端代理了,这个对象可以调用基类的一些受保护的方法来实现通信。
实现步骤:
(1)新建一个控制台应用程序作为客户端,并且添加System.ServiceModel引用。
(2)编写服务协定,内容和之前一致。