zoukankan      html  css  js  c++  java
  • 第二章-服务契约与数据契约

    1. 服务契约 

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

     

     

    1. 数据契约 

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

     

    1. 消息契约 

     

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

     

    1. 契约与代码 

     

     

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

     

     

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

     

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

     

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

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

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

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

  • 相关阅读:
    如何在ASP.NET Web站点中统一页面布局[Creating a Consistent Layout in ASP.NET Web Pages(Razor) Sites]
    JS 传播事件、取消事件默认行为、阻止事件传播
    脚本化CSS类-HTML5 classList属性
    offset、client、scroll开头的属性归纳总结
    使用insertBefore实现insertAdjacentHTML()
    HTML5 数据集属性dataset
    圣杯布局与双飞翼布局
    Lazyload Angular
    MongoDB学习笔记
    HTML5调用电脑摄像头拍照
  • 原文地址:https://www.cnblogs.com/EastWind/p/5892275.html
Copyright © 2011-2022 走看看