知识大全 WCF 3.5对HTTP编程的增强

Posted 模型

篇首语:缺乏知识就无法思考,缺乏思考也就得不到知识。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 WCF 3.5对HTTP编程的增强相关的知识,希望对你有一定的参考价值。

WCF 3.5对HTTP编程的增强  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

   NET Framework 中的 WCF 构建于 NET Framework 的扩展点之上 从而为构建符合 Web 原则的服务提供一流的支持 它包含一个易于使用的 HTTP 编程模型 JavaScript Object Notation (JSON) 消息传递功能 以及新的整合 API 使创建和使用整合的内容变得非常简便 凭借此功能集 WCF 现已成为将服务连接到 Web 客户端的首选服务平台 不论这些客户端是 ASP NET AJAX 控件 SilverlightTM 客户端 还是浏览器

  应该说 这对于微软的SOA战略来讲 是一个非常有力的改进与增强 如何将原有的BS系统 富客户端与服务进行通信 提供服务和消费服务 对于一个企业要实现SOA解决方案来讲 始终是一件弥足轻重的任务 可以说 WCF 提供的简洁的HTTP编程模型 弥补了这一缺点

  使 NET Framework 中的 WCF 如此引人注目的特色之一是 以 Web 为中心的通信与 SOAP 和 WS * 标准组合到了一个服务堆栈和对象模型中 这意味着您可以构建这样一个服务 即采用 SOAP 和 WS * 在企业内部或跨企业边界进行通信 同时还可以将同一服务配置为使用 Web 协议与外部通信

  这是多么让人愉快的选择!这意味着对于同一个服务 面对不同的场景 我们可以选择不同的协议完成与客户端的通信 尤其是WCF支持基于TCP传递SOAP/WS *消息 而一直以来 WCF到WCF之间采用二进制形式的消息传递 使得我们可以构建更加快速的企业内部网 实现企业信息化的高效与稳定

  WCF对于REST的支持已经到了空前强大的地步 使用WCF的REST模式 可以发送POX(Plain Old XML)消息或者使用联合(Syndication)格式 WCF 专门提供了WebHttpBinding WebHttpBehavior 以及关于HTTP动作的特性 例如WebGetAttribute和WebInvokeAttribute 其中 WebGetAttribute对应HTTP的GET动作 而WebInvokeAttribute则可以被除HTTP GET之外的动作所使用 例如

  

  

  [ServiceContract]public interface IPictureService[OperationContract][WebGet(UriTemplate = picture/pictureId )]Stream GetPicture(String pictureId);

  [OperationContract][WebGet(UriTemplate = picture/t/pictureId )]Stream GetPictureThumbnail(String pictureId);[OperationContract][WebInvoke(UriTemplate= update Method= POST )]void UpdatePictureInfo(PictureInfo info);

  为了支持对应的客户端代理的创建 WCF 还增加了一个工厂类WebServiceHostFactory以及宿主类WebServiceHost 前者继承于ServiceHostFactory类 后者则继承自ServiceHost类

  WebServiceHostFactory 类型适用于 IIS 承载的情形 这样就不需要命令性或配置文件承载信息 NET Framework 中的 WCF 引入了 svc 文件 作为在 IIS 中承载 WCF 服务的激活目标 这些文件包含了一些指令 类似于 ASP NET 中的页面指令 将 WebServiceHostFactory 添加到 svc 文件指令的 Factory 属性会创建一个 ServiceHost 添加一个终结点(与 WebHttpBinding 使用适当的约定) 将 WebHttpBehavior 添加到该终结点 然后打开 ServiceHost

  

  

  <%@ ServiceHostLanguage= C# Service= PictureService  

  Factory= System ServiceModel Web WebServiceHostFactory %>

<%@ ServiceHost   Language="C#"   Service="PictureService"   Factory="System.ServiceModel.Web.WebServiceHostFactory" %>服务的 nfig 文件不包含任何与 WCF 相关的条目

  通过WCF 增加的对Syndication的支持 可以非常方便的创建RSS或ATOM源 文中写道

   NET Framework 充分支持整合内容的创建和使用 它支持 RSS 和 ATOM 格式的创建及使用 支持添加整合扩展的各种方式 甚至还支持实现其他格式的功能 编程模型避免了开发人员直接处理整合格式细节 从而使其易于使用

  虽然新的整合功能由 WCF 小组编写 但它并不依赖于 WCF 事实上 所有与整合相关的类型都是 System Syndication 命名空间的一部分 虽然它们位于 System ServiceModel Web dll 程序集中 您可以从任何承载了 AppDomain(ASP NET WPF 应用程序 NT 服务等)的进程使用 NET Framework 的整合功能 这个功能意味着您可以通过任何传输(而不仅仅是 HTTP)提供或使用整合的内容 然而 当与 WCF 中的 HTTP 编程模型结合后 也可以将整合添加到现有的 SOAP/WS * 服务中

  如下代码演示了如何检索一个 ATOM 源 将其转换为 RSS 然后将新的 RSS 表示输出到控制台

  

  

  // read an ATOM feedUri feedUri = new Uri( );SyndicationFeed feed = SyndicationFeed Load(feedUri);

  // transform it to RSSRss FeedFormatter formatter = new Rss FeedFormatter(feed);XmlWriter writer = XmlWriter Create(Console Out null);

  // write it to the Consoleformatter WriteTo(writer);writer Flush();

cha138/Article/program/net/201311/12447

相关参考

知识大全 ASP.NET 3.5核心编程之利用页面方法来进行远程调用

ASP.NET3.5核心编程之利用页面方法来进行远程调用  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下

知识大全 ASP.NET 3.5核心编程之AJAX Web Service的调用

ASP.NET3.5核心编程之AJAXWebService的调用  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起

知识大全 .NET 3.5 SP1中的JIT增强

你可能错过的东西:.NET3.5SP1中的JIT增强  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

知识大全 也谈.NET 3.5 SP1中的JIT增强

也谈.NET3.5SP1中的JIT增强  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!在NET平台里

知识大全 浅析.NET 3.5 SP1中的JIT增强

浅析.NET3.5SP1中的JIT增强  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!在NET平台里

知识大全 编程者必须学习的10项.NET技术

编程者必须学习的10项.NET技术  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  WCF(Win

知识大全 WCF Data Contract对Collection和D

WCF中的DataContract:WCFDataContract对Collection和D  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理

知识大全 Java SE 6 新特性: HTTP 增强

JavaSE6新特性:HTTP增强  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  摘要  Jav

知识大全 一起学WCF--wcf初识

一起学WCF--wcf初识  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  最近想把有关WCF的内

知识大全 WCF Tips之WCF应用程序的程序集划分

WCFTips之WCF应用程序的程序集划分  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  WCF