Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
WCF ist das einheitliche Programmiermodell von Microsoft zum Erstellen dienstorientierter Anwendungen. Es ermöglicht Entwicklern, sichere, zuverlässige, Transaktionslösungen zu erstellen, die plattformübergreifend integriert und mit vorhandenen Investitionen zusammenarbeiten. ASP.NET Web-API ist ein Framework, das das Erstellen von HTTP-Diensten erleichtert, die eine breite Palette von Clients erreichen, einschließlich Browsern und mobilen Geräten. ASP.NET Web-API ist eine ideale Plattform zum Erstellen von RESTful-Anwendungen im .NET Framework. In diesem Thema finden Sie einige Anleitungen, mit denen Sie entscheiden können, welche Technologie Ihren Anforderungen am besten entspricht.
Auswählen der zu verwendenden Technologie
In der folgenden Tabelle werden die wichtigsten Features der einzelnen Technologien beschrieben.
WCF | ASP.NET-Web-API |
---|---|
Ermöglicht die Erstellung von Diensten, die mehrere Transportprotokolle (HTTP, TCP, UDP und benutzerdefinierte Transporte) unterstützen, und ermöglicht den Wechsel zwischen diesen. | Nur HTTP. Erstklassiges Programmiermodell für HTTP. Besser geeignet für den Zugriff von verschiedenen Browsern und mobilen Geräten und ermöglicht eine breite Reichweite. |
Ermöglicht Die Erstellung von Diensten, die mehrere Codierungen (Text, MTOM und Binary) desselben Nachrichtentyps unterstützen und den Wechsel zwischen ihnen ermöglichen. | Ermöglicht das Erstellen von Web-APIs, die eine Vielzahl von Medientypen wie XML, JSON usw. unterstützen. |
Unterstützt Gebäudedienste mit WS-*-Standards wie Zuverlässiges Messaging, Transaktionen, Nachrichtensicherheit. | Verwendet grundlegende Protokolle und Formate wie HTTP, WebSockets, SSL, JSON und XML. Es gibt keine Unterstützung für Protokolle auf höherer Ebene wie zuverlässiges Messaging oder Transaktionen. |
Unterstützt Anforderungsantwort-, One-Way- und Duplex-Nachrichtenaustauschmuster. | HTTP ist Anforderung/Antwort, aber zusätzliche Muster können über die SignalR - und WebSockets-Integration unterstützt werden. |
WCF SOAP-Dienste können in WSDL beschrieben werden, sodass automatisierte Tools Clientproxys auch für Dienste mit komplexen Schemas generieren können. | Es gibt eine Vielzahl von Möglichkeiten, eine Web-API zu beschreiben, die von automatisch generierten HTML-Hilfeseiten reicht, die Codeausschnitte bis hin zu strukturierten Metadaten für integrierte OData-APIs beschreibt. |
Wird mit dem .NET Framework versendet. | Im Lieferumfang von .NET Framework enthalten, steht jedoch auch als unabhängiges Out-of-Band-Download bereit, da es sich um eine Open Source-API handelt. |
Verwenden Sie WCF, um zuverlässige, sichere Webdienste zu erstellen, auf die über eine Vielzahl von Transporten zugegriffen werden kann. Verwenden Sie ASP.NET Web-API, um HTTP-basierte Dienste zu erstellen, auf die von einer Vielzahl von Clients zugegriffen werden kann. Verwenden Sie ASP.NET Web-API, wenn Sie neue DIENSTE im REST-Stil erstellen und entwerfen. Obwohl WCF einige Unterstützung für das Schreiben von REST-Formatdiensten bietet, ist die Unterstützung für REST in ASP.NET Web-API vollständiger, und alle zukünftigen VERBESSERUNGEN der REST-Features werden in ASP.NET Web-API vorgenommen. Wenn Sie über einen vorhandenen WCF-Dienst verfügen und zusätzliche REST-Endpunkte verfügbar machen möchten, verwenden Sie WCF und die WebHttpBinding.