如何理解ASP.NET中WCF服务与ASMX服务的兼容性

这期内容当中小编将会给大家带来有关如何理解ASP.NET中WCF服务与ASMX服务的兼容性,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都做网站、网站设计、外贸营销网站建设、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的西畴网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

根据前面的操作得知,当为asp.net AJAX程序创建一个新的WCF服务时,默认情况下该服务类前面使用AspNetCompatibilityRequirements属性进行修饰。现在,我们来作一下简要分析。

ASP.NET中WCF服务与ASMX服务的分析:

[ServiceContract]     [AspNetCompatibilityRequirements(     RequirementsMode=AspNetCompatibilityRequirementsMode.Allowed)]     public class TimeService     {     ……     }

虽然在设计上可以进行独立传输,但当应用于一个asp.net AJAX应用程序环境下时,WCF服务实际上可以工作在一种十分类似于ASMX服务的方式下。借助于这个AspNetCompatibilityRequirements属性,我们可以指示WCF使用与ASMX服务相同的模型进行工作。实际情况下,这个设置指示当激活一个WCF服务时,运行时刻将对声明的端点进行检查并确保它们都使用了Web HTTP绑定模型。

与ASMX服务的良好兼容性可以使得在WCF服务中访问asp.net对象例如HttpContext对象以及其它内在的asp.net对象完全有可能。

注意,要实现ASP.NET中WCF服务与ASMX服务的兼容性至少要实现两点。在配置文件web.config中,需要进行类似如下的声明式定义:

< system.serviceModel>    :     < serviceHostingEnvironment aspNetCompatibilityEnabled="true" />    < /system.serviceModel>

第二,开发者需要显式地选择一个给定WCF服务的兼容性方式,这是通过使用服务AspNetCompatibilityRequirements属性完成的。

在asp.net AJAX应用程序中请求的服务要求必须进行相应的服务器端配置。归纳看来,在asp.net应用程序中,目前主要存在两种软件技术可以用来构建服务,即ASMX Web服务和WCF服务。其中,WCF服务已经包括了ASMX Web服务。但是,必须明确:AJAX通信要求使用JSON数据字符串实现数据在客户端与服务器的来回传输。在asp.net AJAX扩展1.0时代或者在asp.net 3.5中调整asp.net运行时刻使ASMX Web服务支持JSON是一项比较容易的任务。但是,针对更为丰富的WCF服务要求实现JSON数据格式的传输则要略微复杂一些。这也正是为什么仅仅在asp.net 3.5中才可以使用WCF构建AJAX后端服务的原因。

上述就是小编为大家分享的如何理解ASP.NET中WCF服务与ASMX服务的兼容性了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注创新互联行业资讯频道。


当前文章:如何理解ASP.NET中WCF服务与ASMX服务的兼容性
链接URL:http://hbruida.cn/article/psgjdg.html