【问题标题】:WCF Data Service (ADO.Net Data Service or Astoria Service)WCF 数据服务(ADO.Net 数据服务或 Astoria 服务)
【发布时间】:2009-12-21 00:16:00
【问题描述】:

Astoria Service Model 是否只支持

原子、JSON、XML、XML+HTTP

SOAP,WSDL,ASMX 这样的格式是否过时了? .所以当我想开发 SOA 时,我可以忽略SOAP,ASMX,WSDL formats吗?

【问题讨论】:

    标签: asp.net astoria


    【解决方案1】:

    我想补充一下上述答案,并说实际上有一种方法可以发现有关数据服务 (REST) 端点的元数据。每个端点都包含一个服务文档(只需在端点的根上执行 GET),它描述了服务公开的集合。此外,从服务的根(即http://mydomain/myservice.svc/$metadata)转到 $metadata 端点会返回一个完整描述服务(集合、类型、类型的属性、集合之间的关系和服务操作)的 XML 元数据文档.

    【讨论】:

      【解决方案2】:

      不,绝对不是!

      ASMX = ASP.NET webservices - 这是过时的,它是在 .NET 1.0 中引入的,在 .NET 3.0 中基本上被 WCF 取代。

      但是:WCF 绝对是没有过时的! WCF 是 Microsoft 在两个系统之间进行通信的标准方式。它默认使用 SOAP(包括 WSDL 和 XSD),这是一种成熟可靠的技术,适用于需要数据完整性、(人类和机器可读)通过 WSDL 和服务元数据进行服务描述等的企业场景. SOAP 还提供更高级的功能,例如可靠的消息传递和事务支持。

      REST / ADO.NET 数据服务在公开服务方面是一种更轻量级、更易于获取的方法,但它在很多方面都存在不足:没有统一的服务描述可用,因此您无法真正“发现”服务提供的方法和数据类型;要么你自己有知识,要么服务提供商给你一个简单的英语文档,但是没有标准的方式向外界描述 REST 服务(目前)。此外,您并不真正提前知道该服务可能返回什么样的数据——没有要坚持的 XML 模式——它更像是一种“让我们点击服务,看看返回什么”的方法,这种方法在在某些情况下,但在更大规模的企业式环境中并非如此。

      总结一下:SOAP(WSDL、XSD)与 REST 的争论仍在进行中,两者都有其存在的理由,我不认为其中一个会取代另一个 - 他们正在相互取代。

      【讨论】:

        猜你喜欢
        • 2010-09-26
        • 1970-01-01
        • 1970-01-01
        • 2011-04-08
        • 2010-09-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-04-22
        相关资源
        最近更新 更多