码迷,mamicode.com
首页 > 其他好文 > 详细

第二章-服务契约与数据契约

时间:2016-09-21 14:32:48      阅读:125      评论:0      收藏:0      [点我收藏+]

标签:

  1. 服务契约 

服务契约定义了服务向外界公开的功能,这些功能表现为服务操作,在SOAk ,经常需要交接一组SOAP消息,而这些消息的模式通常是在服务契约中定义的。服务契约还可以进一步定义每个服务操作的消息交换模式(请求-响应模式,单工模式,双工模式) 

 

 

  1. 数据契约 

通常,需要把一个或多个参数传递给一个服务操作,并等待服务操作返回一个值。消息参数的结构在数据契约中被解释为XSD Schema,而XSD Schema是WSDL文档的一问你。数据契约定义了客户端与服务之间信息交接的结构和内容。 

 

  1. 消息契约 

 

消息契约属于高级功能,使用它可以对SOAP头和SOAP体进行更好的控制。消息契约直接与SOAP消息交互,而不只是与消息体交互,当使用数据契约而不使用消息契约时,就属于这种情况 

 

  1. 契约与代码 

 

 

  1. 汽车租赁服务-----实现示例 

 

 

  1. 服务契约与数据契约的版本控制 

 

双向版本控制,IExtensibleDataObject接口并定义必不可少的ExtensionDataObject成员。如果DataContractSerializer序列化器在XML文档中检测到未知的元素,地么在反序列化时,会把写入ExtensionDataObject属性包。当再次引用ExtensiondataObject对象的内容时,它里的内容还将保留,因此在数据契约的不同版本之前,数据不会丢失。 

 

如果不同模式之前没有必要严格保持一致,则只需要注意以下几点: 

  • 可以在任何时候添加新方法 

  • 可以不删除任何己存在的方法 

  • 参数的数据类型必需必需保持兼容 

第二章-服务契约与数据契约

标签:

原文地址:http://www.cnblogs.com/MiaoXin/p/5892275.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!