WCF提供了ASP.NET Web服务中不存在的丰富特性和功能。我想知道那些在生产环境中使用该技术的实际经验的人是否可以分享他们现在可用的有趣用法的经验,因为新的功能。我认为这将是一个有用的来源“哦,你可以做什么?”对于那些从ASP.NET Web Services进入它的人。
答案 0 :(得分:1)
这是一个相当广泛的问题。 WCF做的远远超过asp web服务。
我使用WCF构建代理ADO.Net数据提供程序,该提供程序通过WCF服务路由所有操作。这使您可以使用可在服务器上访问的数据库,但不能使用客户端计算机。
答案 1 :(得分:1)
那么,Web服务的主要问题是什么呢?
微软通过一个名为Web Service Extensions版本2.0和3.0的中间版本解决了这些问题。这些问题一下子解决了这些问题。但是,这些是一个附加组件。我有经验 使用它,肯定需要一些手工制作代码。添加它们是为了符合W3C Organsisations制定的WS- *标准。
如果您想使用WSE的其他功能,则必须最终重新编译代码。客户端上的代理必须从新的基类继承。您必须添加其他配置信息。您可以基本的4/5步骤来更新您的客户端。但是,这不是最方便的。
比较WSE 3.0和WCF时,您会发现所有功能都更容易实现。如果我将它与上面的列表进行比较:
除了这些功能外,WCF还更公开地实现了4个SOA“规则”。 SOA是一个很大的主题,可以在互联网上搜索。已经写完了整本书 在SOA上,但只是接受WCF是SOA架构的实现。
其中一条SOA指南要求您提供“合同”(模式),而不是对象/类,因为对象/类可能表示与OO语言的搭配。模式在XML中指定为与语言无关。
WCF还通过“合同”定义服务。基本原则是您定义合同,即可以先执行的操作。在.NET中,这是作为一个接口实现的,用某些属性装饰。
然后,当.NET开发人员将接口实现为具体类(用其他一些属性修饰)并对方法进行编码以实现其功能。这意味着“契约”是从界面中提取的,我们的类只提供它的实现。这样.NET就提供了自己的方式 实施标准。
尽管您可以对所有这些进行编码,但WCF允许您在配置文件中指定它 - 例如URI,加密机制,灵活性的传输机制。另一个SOA标准是能够灵活地实现您的实现。
真的是一个快速概述。我希望它有助于你的脚趾浸泡而不是太具体。