WCF vs Web Service
Webtjenester og Windows Communication Foundations (WCF) er to metoder, som applikationer kommunikerer over et netværk.
Mere om webservices
Webtjenester er komponenter i applikationer, som kan fås adgang til ved hjælp af åbne protokoller, såsom SOAP (Simple Object Access Protocol), som er et XML-baseret sprog udviklet af W3C, til at kode og overføre data. SOAP bruger XML til databeskrivelser og HTTP til dataoverførsel. De vigtigste fordele, der leveres med disse åbne protokoller, er interoperabilitet mellem tjenesterne på trods af forskellene i platforme og de anvendte programmeringssprog. Webtjenester bruger (WSDL) Webtjenester Beskrivelsessprog) til at beskrive tjenesterne, og UDDI (Universal Description, Discovery and Integration) til at liste med de tilgængelige tjenester. Webtjenester har ikke brug for en webbrowser eller HTML for at fungere og indeholder muligvis eller ikke en GUI som defineret af applikationen. Webtjenester kan implementeres med ASP.NET.
Mere om Windows Communication Foundation (WCF)
Windows Communication Foundation blev introduceret til at erstatte tidligere webserviceplattformer og bruger serviceorienteret arkitektur i bygning af applikationer. Interoperabilitet og flere meddelelsesmønstre, servicemetadata, datakontrakter og flere transportkodninger er funktioner i WCF. Holdbare meddelelser, AJAX og REST og Secure Transactions-funktioner tilføjer mere alsidighed til platformen end tidligere webservices.
Hvad er forskellen mellem Web Services og WCF? • Webtjenester kan være vært i IIS (Internet Information Service) eller uden for IIS, mens WCF kan være vært i IIS, WAS (Windows Activation Service). WCF-tjenester kan generelt være vært i IIS 5.1 eller 6.0, Windows Process Activation Service (WAS), der leveres som en del af IIS version 7.0, og i enhver .NET-applikation. For at være vært for en webtjeneste i IIS version 5.1 eller 6.0 er det et must, at webtjenesterne bruger HTTP som kommunikationstransportprotokol. • I Web Services-platformen tilføjes Web Service-attribut til toppen af klassen, mens der i WCF er en Service Contract-attribut. Tilsvarende tilføjes attribut til Webmetode oven på metoden til webservicen, mens i WCF tilføjes Service Operation Contract på den øverste metode. • Webtjenester bruger XML 1.0, MTOM (Message Transmission Optimization Mechanism) og DIME-kodinger, mens WCF bruger XML 1.0, MTOM og Binary kodinger. Begge platforme understøtter tilpassede kodningsmetoder. • Webtjenesteplattformen understøtter XML Serialization, mens i WCF understøtter serviceplatformen Run Time Serialization. • WCF Services kan multi-threaded via klassen Serviceadfærd, mens webtjenester ikke kan multi-threaded. • WCF Services understøtter forskellige typer bindinger som BasicHttpBinding, WSHttpBinding, WSDualHttpBinding, mens webservices kun bruger SOAP eller XML til dette formål. • Webtjenester samles i en klassebibliotekssamling. En fil kaldet 'servicefilen' leveres med udvidelsen .asmx og indeholder @ WebService-direktiv, der identificerer den klasse, der indeholder koden for tjenesten og den samling, hvor den er placeret i WCF. |