2011-05-23 21 views
1

微软正在推动Windows Communication Foundation(WCF),以取代Web服务ASMX文件,但我不确定至少在一开始有多成功。更好的技术已经取代MS平台上的ASMX网络服务?

现在使用什么首选方法?有更新版本的WCF变得更好使用?我主要是创建和使用我目前在MS技术中使用的Web服务。

回答

2

WCF是ASMX的替代品。对于ASMX(错误修复除外)将不会有进一步的开发,而WCF正在得到改进(因为它是在.NET Framework 3.0上发布的,它已经在3.5和4.0上获得了新功能)。甚至还有一个codeplex项目,在http://wcf.codeplex.com的下一个版本中预览一些即将推出的功能。

+1

事实上,这只是ASMX Web服务和XML序列化中正在修复的关键错误。 – 2011-05-23 16:59:05

1

WCF已经取代了ASMX Web服务和.NET Remoting。我相信它也包装​​企业服务(是COM +/MTS),但我不是100%确定的。根据我的经验,WCF远比ASMX或Remoting更容易。这种简单方法的一部分来自非常简单的方法......定义一个契约(接口),定义一个实现此契约的服务,并可以定义可以传递的对象。

WCF在如何托管这些服务方面非常灵活。在later versions托管和配置选项已经改善。另外,如果你既是服务的提供者又是服务的消费者,WCF允许你灵活选择你的交通工具,而不管你的服务逻辑如何。我的意思是,如果你决定选择一个更高性能的HTTP服务选项(比如命名管道),那么你不会将你的asmx重写为另一种技术。 WCF服务不知道传输 - 这仅仅是一个配置细节。

另外,应该提及REST。由于这些日子风靡一时,WCF支持REST风格的服务实现,但在我看来,您将更好地在ASP.NET MVC中实现REST服务API。