AXzhz

专注ASP.NET!
        写软件的都是小姐,用软件的都是大爷。真TMD说的正确!
                嫖妓不给钱,反说被强奸!___中国共享软件的无奈!
读小学的时候大学不要钱,读大学了小学不要钱。
没工作时国家有分福利房,工作了后全是高价房!!

                        此软件能有效的破解QQ密码。(注:破解QQ密码是违法行为,请不要将软件用于违法行为)
“安得广厦千万间,大庇天下寒士俱欢颜,风雨不动安如山。”1200多年前,诗人杜甫的理想,如今被一帮享受着电脑和互联网带来的快捷生活方式的受过高等教育的大孩子憧憬着。

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

WCF学习随笔6--Version变更--我们在前进_AX

2008-3-20 15:50:22
客户端与服务必须就契约和策略达成一致

【WSDL契约简介】

为服务描述互操作契约
契约包含相关的策略
WSDL是契约和策略的载体.

描述服务及其端点(Endpoint)
绑定协议来访问操作(http/tcp)
消息和类型的定义
通过消息契约关注于每个操作的消息格式

 


【WS-Policy简介】

为影响通信的策略进行描述的户操作标准
能够包含在WSDL契约中

访问操作的协议描述
安全性  (认证)
可靠性消息 (描述上下文的协定)
事务
消息编码(MTOM)
其它的协议



WS一旦发布,WSDL契约就被确定
一般支持向后兼容,WCF契约缺省是提供版本相容性支持的

 

需求在变,版本更新在所难免,现在就遇到了版本控制的问题.

服务契约的变更

有三种处理服务契约的方法【只针对上表客户端不会被影响的操作】
Ⅰ.非严格的方法(平滑的方法)
同一命名空间下,在现有的契约上添加新方法,用户只有更新契约才知道新添加的方法.
Ⅱ.半严格的方法
新命名空间,新方法,新契约(继承自旧契约),并暴露新契约
如果暴露的新契约在新的Endpoint上,则新旧版本并存(平滑的方法)
如果暴露的新契约在旧的Endpoint上,则Client必须Update契约
Ⅲ.独立新版本
新命名空间,新方法,新契约.
这种版本需要:魄力+勇气+远见


数据契约的变更

Required:序列化之前必须要赋值

为了保持向后兼容:
不要删除Required的成员
添加新的Non-Required成员
不改变命名空间


博客园斧头帮少帮主

posted on   斧头帮少帮主  阅读(748)  评论(0编辑  收藏  举报

编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
Google
 
站内搜索:        
园内搜索:
金山词霸:
点击右上角即可分享
微信分享提示