契约(服务契约)

时间:2022-03-05 18:18:22

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、服务类型

      类型化服务

      类型化消息

       非类型化消息