《DEV320WCF.NET4.0中的新功能》由会员分享,可在线阅读,更多相关《DEV320WCF.NET4.0中的新功能(45页珍藏版)》请在金锄头文库上搜索。
1、DEV320_WCF .NET4.0中的新功能中的新功能WCF .NET4.0中的新功能DEV320议程WCF4.0概述WCF4.0 简化的配置WCF4.0 WCF基于WS-Discovery的服务发现机制WCF4.0 路由服务WCF4.0 对REST的进一步支持小结关于WCF4.0简化的开发体验更多的新功能WCF3.5应用的无缝升级WCF4.0的新功能简化的配置支持WS-Discovery发现服务路由服务对REST的进一步支持WCF4.0 简化的配置DEV320简化的配置缺省的服务配置缺省的绑定和行为 实现配置的继承标准终结点 配置化繁为简更方便的运行服务变成可选的 无配置文件的WCF服务成
2、为可能.svc文件变成可选的 简化部署示例:WCF Web服务的配置EndpointA: http:/localhost/service/ICalculator/MEXB: mexHttpBindingC: IMetadataExchangemachine.configC:WindowsMicrosoft.NETFrameworkv4.0.11125Config Host(Root) web.configC:WindowsMicrosoft.NETFrameworkv4.0.11125ConfigEndpointA: http:/localhost/service/ICalculatorB:
3、WSHttpBindingC: ICalculator IIS MetabaseEnabled Protocols: HTTPBaseAddress:http:/localhost/serviceIIS vdir (/localhost/Service)Service.svcService.dll缺省的行为缺省的行为缺省的绑定缺省的绑定web.config/localhost/development 没有没有 web.config缺省的行为缺省的行为示例:WCF Web服务的配置WCF 3.59WCF 4.0演 示演示名称简化的配置WCF4.0 基于WS-Discovery的服务发现机制DEV
4、320WCF基于WS-Discovery的服务发现机制动机应用的动态化和组合化趋势应用组件的多样化发现现有的服务成为一个挑战WCF基于WS-Discovery的服务发现机制框架层组件 帮助构建基于服务发现的丰富应用代理服务客户端查询服务侦听服务发布服务发布回应查询侦听服务发布回应查询WCF基于WS-Discovery的服务发现机制提供了两种方式的发现服务Ad-Hoc方式发现服务WCF 客户端应用帐单服务订货服务发货处理服务定位订货服务定位发货处理服务Managed方式发现服务WCF 客户端应用发现代理发货处理服务帐单服务发货处理服务Announcement帐单服服务找到定位帐单服务WCF服务发
5、现 客户端操作根据指定的条件(Criteria)寻找对应的服务服务契约(Service Contract)范围(Scope)扩展(Extensions)采用动态的终结点(Dynamic Endpoint)或者Discovery客户端在客户端实现发布服务功能WCF服务发现 服务端操作确保服务可以被发现允许服务侦听和回应Discovery消息服务发布功能定制处理指定哪些终结点可以被发现在终结点上添加范围(Scope)信息扩展(Extensions)WCF服务发现 代理端操作回应Discovery消息Find, Announcement, 等等“Discovery Head”提供基类 (Base C
6、lasses)WCF基于WS-Discovery的服务发现机制采用WCF的服务发现机制的应用将具有:低维护成本高健壮性良好的扩展性演 示演示名称 基于WS-Discovery的服务发现机制WCF4.0 路由(Routing)服务DEV320为什么需要中间层服务?服务的聚合服务版本管理协议转换应用负荷的分担服务总线中间层服务的挑战实现中间层服务需要考虑到:事务管理安全性错误处理广播或单播SOAP或REST动态环境可靠性和性能等WCF路由服务的功能基于内容的路由MessageFiltersMessageFilterTableSOAP头Xpath协议转换WCF的标准绑定错误处理通信异常和超时处理出错
7、时的重定位 “如果失败,往哪儿重发”动态更新配置由事件驱动的规则/目的地重新配置不会干扰正在处理中的消息和会话示例:错误处理和协议转换计算器算器客客户端端备份份服服务路由路由服服务WS-HttpNet.Tcp计算器算器服服务示例:复杂的过滤计算器算器客客户端端取整取整计算器算器路由路由服服务常常规计算器算器过滤规则优先级If (has header)取整计算器2If (showed up on Ep2)常规计算器1If (showed up w/ Address 2)取整计算器1If (RoundRobin1)常规计算器0If (RoundRobin2)取整计算器0示例:动态重配置计算器算器客
8、客户端端取整取整计算器算器路由路由服服务常常规计算器算器示例:复杂的错误处理服服务队列列路由路由服服务InQ主主用用备用用日志日志队列列主主用用备用用DLQ演 示演示名称 路由服务WCF4.0 对REST的进一步支持DEV320WCF REST 新功能简化开化开发:简化的配置ASP.NET Routes简化化编程程:无 OperationContractWebFaultException更方便服更方便服务的的调用用:帮助页格式格式:自动 XML/JSON 切换Content Nego API多格式缓存的支持存的支持:ASP.NET Output CacheConditional GET & P
9、UTAJAX:JSONP简化开发简化的配置缺省的标准终结点可定制的标准终结点Routes的集成使用示例简化开化开发:简化的配置ASP.NET Routes格式自动选择XML/JSON基于Accepts/Content-Type请求头指定XML/JSON的场景示例格式格式:自动 XML/JSON切换Content Nego API多格式示例:WCF REST动态格式切换35缓存(Caching)的支持ASP.NET caching 示例Conditional GET/PUT 示例缓存的支持存的支持:ASP.NET Output CacheConditional GET & PUT更方便服务的调用
10、自动生成帮助页面每个服务会自动生成一个XHTML帮助页,其中包含URL及消息示例更方便服更方便服务的的调用用:帮助页AJAXJSONP示例缺省的callback属性定制的callback属性AJAX:JSONP演 示演示名称 REST的新功能小结WCF4.0的新功能简化的开发体验在3.5的基础上提供一系列新功能在下一个课程中将会介绍:WCF + WF4.0 = 工作流服务疑问和解答参考资源学习和下载:WF 3.x:http:/ 4: http:/ 3.x: http:/ 4: http:/ .NET 的资源(文档;案例;演示等)http:/dotnet专家问答区 (F4)本课程结束后,我们将在接下来的70分钟内于4层专家问答区与您交流答疑