1、服务契约
WCF服务的对外接口作定义和声明
[ServiceContract]:定义服务操作,对于某个Interface加上这个属性标签就会就定义了一个服务,客户端才可以看到这个服务
2、契约参数
[ServiceContract]:
Name:指定暴露给客户端的服务名称。
Namespace:提供有意义的命名空间。
CallbackConract:设置当契约以双工模式通信时的回调契约ConfigurationName:用于获取或设置配置文件中服务元素的名称,默认值是实现类的名称
ProtectionLevel:指定保护级的绑定要求
EncryptAndSign:加密及签名数据,以保证所传输数据的机密性和完整性
None:只进行验证
Sign:签名数据
SessionModel:指定对需要或支持可靠会话的支持类型
Allowed:如果进入的连接支持可靠会话,则契约支持可靠会话
NotAllowed:指定的契约从不支持可靠会话
Required:指定契约总是需要可靠会话
[OperationContract]:使得方法作为公共服务契约的一部分暴露出来,也就说说客户端可以看到服务中暴露出来的方法
特 性 |
实 际 含 义 |
Action |
获得或设置请求消息的WS-Addressing |
AsyncPattern |
指示是否在服务上使用Begin/End方法 对异步实现操作。这就允许服务将处理 操作转移到另一个服务器端的线程; 这与异步调用该方法的客户没有任何关联 |
IsInitiating |
指定该操作是否是会话中的初始操作 |
IsOneWay |
指示该操作是否只包含一个输入 消息(并且没有关联的输出) |
IsTerminating |
指定WCF运行库是否应该在操作 完成后尝试终止当前会话 |
3、服务类型
类型化服务
类型化消息
非类型化消息