2009-12-21 4 views

Répondre

0

Non, certainement pas!

ASMX = services web ASP.NET - ceci est obsolète, il a été introduit dans .NET 1.0 et fondamentalement remplacé par WCF dans .NET 3.0.

MAIS: WCF est définitivement pas obsolète! WCF est le Microsoft standard de communication entre deux systèmes. Il utilise SOAP (y compris WSDL et XSD) par défaut, et c'est une technologie mature et fiable qui fonctionne bien dans les scénarios d'entreprise où vous avez besoin de choses telles que l'intégrité des données, la description du service (WSDL). . SOAP offre également des fonctionnalités plus avancées telles que la messagerie fiable et le support transactionnel.

REST/ADO.NET Data Services est un plus léger, plus facile à obtenir, à l'approche à l'exposition des services, mais ce qui manque à bien des égards: il n'y a pas de description de service unifié disponible, de sorte que vous ne pouvez pas vraiment « découvrir "quelles méthodes et quels types de données l'offre de service; Soit vous avez des connaissances vous-même, soit le fournisseur de services vous donne une documentation en anglais, mais il n'existe pas (encore) de moyen standard de décrire un service REST au monde extérieur. De plus, vous ne savez pas vraiment à l'avance quel type de données ce service pourrait renvoyer - il n'y a pas de schéma XML à suivre - c'est plutôt une approche «passons au service et voyons ce qui revient» qui pourrait fonctionner certains cas, mais pas vraiment à plus grande échelle, les environnements de style entreprise. Donc, pour résumer: le débat SOAP (WSDL, XSD) vs REST est en cours, les deux ont leurs raisons d'être, et je ne vois pas l'un d'entre eux remplaçant l'autre - ils se supplantent les uns les autres.

1

Je voudrais ajouter à la réponse ci-dessus et dire qu'il existe en fait un moyen de découvrir les métadonnées sur le point de terminaison Data Services (REST). Chaque point de terminaison inclut un document de service (il suffit de faire un GET à la racine du point de terminaison) qui décrit les ensembles exposés par le service. En outre, l'accès au point de terminaison $ metadata à partir de la racine du service (métadonnées http://mydomain/myservice.svc/ $) renvoie un document de métadonnées XML qui décrit complètement le service (ensembles, types, propriétés sur les types, relations entre les ensembles et opérations de service).