Ich bin total verwirrt zwischen WCF- und ASMX-Webdiensten. Ich habe in meiner früheren Phase viele Webdienste verwendet, und jetzt gibt es diese neue Einführung namens WCF. Ich kann immer noch WCF erstellen, das als Webdienst fungiert. Ich denke, es wird mehr Zeug in WCF geben.
Was sind die Unterschiede zwischen WCF und Webdiensten? Wann sollte jeder verwendet werden?
wcf
web-services
asmx
Shailesh
quelle
quelle
Antworten:
Keith Elder vergleicht hier ASMX gut mit WCF . Hör zu.
Ein weiterer Vergleich von ASMX und WCF finden Sie hier - ich stimme nicht zu 100% allen Punkten dort zu, aber es könnte Ihnen eine Idee geben.
WCF ist im Grunde "ASMX auf Stereoiden" - es kann alles sein, was ASMX könnte - und vieles mehr! .
ASMX ist:
WCF kann sein:
Kurz gesagt: WCF ist hier, um ASMX vollständig zu ersetzen.
Überprüfen Sie das WCF Developer Center auf MSDN .
Update: Link scheint tot zu sein - versuchen Sie Folgendes: Was ist Windows Communication Foundation?
quelle
ASMX-Webdienste können nur über HTTP (traditioneller Webservice mit .asmx) aufgerufen werden. Während der WCF-Dienst oder eine WCF-Komponente von jedem Protokoll (wie http, tcp usw.) und jedem Transporttyp aufgerufen werden kann.
Zweitens sind ASMX-Webdienste nicht flexibel. WCF-Dienste sind jedoch flexibel. Wenn Sie eine neue Version des Dienstes erstellen, müssen Sie nur ein neues Ende verfügbar machen. Daher sind Dienstleistungen agil und ein sehr praktischer Ansatz, um die aktuellen Geschäftstrends zu betrachten.
Wir entwickeln WCF als Verträge, Schnittstellen-, Betriebs- und Datenverträge. Als Entwickler konzentrieren wir uns mehr auf die Geschäftslogikdienste und müssen uns keine Gedanken über den Kanalstapel machen. WCF ist eine einheitliche Programmier-API für alle Arten von Diensten. Daher erstellen wir den Dienst und verwenden Konfigurationsinformationen, um den Kommunikationsmechanismus wie HTTP / TCP / MSMQ usw. Einrichten zu können
quelle
endpoint
denke ich. Gefällt<endpoint address="http://api.microsofttranslator.com/V1/soap.svc" binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_LanguageService1" contract="TranslatorService.LanguageService" name="BasicHttpBinding_LanguageService3" />
Dies ist eine sehr alte Frage, aber ich glaube nicht, dass die Vorteile von ASMX angemessen dargestellt wurden. ASMX-Webdienste sind zwar nicht besonders flexibel, aber sehr einfach zu verwenden und zu verstehen. Während WCF flexibler ist, ist es auch komplexer aufzustehen und zu konfigurieren.
ASMX-Webdienste können sofort aufgerufen und als Webservice-Referenz hinzugefügt werden, sobald Sie die Datei hinzufügen. (vorausgesetzt, Ihr Projekt erstellt)
Für den einfachen Entwicklungsworkflow von
create webservice
->run webservice
->add webservice reference
hat ein ASMX-Webservice sehr wenig, was schief gehen kann, nicht viel, was Sie falsch konfigurieren können, und das ist seine Stärke.Als Antwort auf diejenigen, die behaupten, dass WCF ASMX ersetzt, würde ich antworten, dass WCF einen optimierten KISS-Konfigurationsmodus hinzufügen müsste, um ASMX vollständig zu ersetzen.
Beispiel web.config für einen ASMX-Webservice:
quelle
WCF ersetzt ASMX-Webdienste vollständig. ASMX ist die alte Methode zur Ausführung von Webdiensten, und WCF ist die derzeitige Methode zur Ausführung von Webdiensten. Alle neuen SOAP-Webdienstentwicklungen auf dem Client oder Server sollten mit WCF durchgeführt werden.
quelle
Es wird viel über die Einfachheit von asmx-Webdiensten über WCF gesprochen. Lassen Sie mich hier einige Punkte klarstellen.
Nicht zu vergessen, dass ich einer der Typen war, die asmx-Dienste mehr mochten als WCF, aber dieses Mal war ich mir der WCF-Dienste und ihrer Fähigkeiten nicht bewusst. Ich hatte Angst vor den WCF-Konfigurationen. Aber ich habe es gewagt und versucht, einige eigene WCF-Dienste zu schreiben, und als ich mehr über WCF erfuhr, habe ich jetzt keine Hemmungen mehr für WCF und empfehle sie jedem und jedem. Viel Spaß beim Codieren !!!
quelle