Webtjenester vs. WCF
Både webtjenester og WCF er webteknologier udviklet af Microsoft. Webtjenester blev introduceret i tidligere versioner af. NET, mens WCF blev tilføjet til. NET framework i senere versioner. Webtjenester bruges til at bygge applikationer, der kan sende/modtage beskeder ved hjælp af SOAP over HTTP. WCF er til at bygge distribuerede applikationer til at udveksle beskeder ved hjælp af SOAP over enhver transportprotokol.
Webtjenester
En webtjeneste (nogle gange kendt som ASMX-teknologi i. NET) er en kommunikationsmetode over netværket. Ifølge W3C er en webservice et system dedikeret til at understøtte maskine-til-maskine-transaktioner over et netværk. Det er en web-API beskrevet i WSDL (Web Service Description Language), og webtjenester er norm alt selvstændige og selvbeskrivende. Webtjenester kan opdages ved hjælp af UDDI (Universal Description, Discovery and Integration) protokol. Ved at udveksle SOAP-meddelelser (Simple Object Access Protocol) typisk over HTTP (med XML), kan andre systemer interagere med webtjenester. Webtjenester bruges på flere måder, såsom RPC (Remote Procedure Calls), SOA (Service Oriented Architecture) og REST (Representational State Transfer). Der er to automatiserede designmetoder til udvikling af webtjenester. Bottom-up tilgangen handler om først at oprette klasserne og derefter bruge WSDL-genereringsværktøjer til at sammensætte disse klasser som webtjenester. Top-down tilgangen handler om at definere WSDL-specifikationerne og derefter bruge kodegenereringsværktøjer til at generere de tilsvarende klasser. Webtjenester har to hovedanvendelser. De kan bruges som genanvendelige applikationskomponenter og/eller til at forbinde webapplikationer, der kører på forskellige platforme.
WCF
WCF (Windows Communication Foundation) er en. NET API (Application Programming Interface), som giver en samlet programmeringsmodel til udvikling af forbundne og serviceorienterede applikationer. Mere specifikt bruges det til at udvikle og implementere distribuerede applikationer med SOA. SOA beskæftiger sig med distribueret databehandling, hvor forbrugere forbruger tjenester. Flere forbrugere kan forbruge en enkelt tjeneste og omvendt. WCF understøtter avancerede webservicestandarder såsom WS-Addressing, WS-ReliableMessaging, WS-Security og RSS-syndikering (tilgængelig efter. NET 4.0). En WCF-klient bruger et slutpunkt til at oprette forbindelse til en WCF-tjeneste. Hver tjeneste kan have flere endepunkter, der afslører sin kontrakt. Udtrykket ABC bruges til at henvise til WCF-tjenestens adresse/binding/kontrakt. Kommunikationen mellem kunder og tjenester udføres gennem SOAP-konvolutter.
Hvad er forskellen mellem webtjenester og WCF?
Der er nogle vigtige forskelle mellem webtjenester og WCF-tjenester. Webtjenester bruges til at bygge applikationer, der kan sende/modtage beskeder ved hjælp af SOPA over HTTP. WCF er dog til at bygge distribuerede applikationer til at udveksle meddelelser ved hjælp af SOAP og enhver transportprotokol som HTTP, TCP, named pipes og Microsoft Message Queuing (MSMQ) osv. Ydermere kan WCF udvides til at fungere med enhver anden transportprotokol. Selvom webtjenester er meget enkle og nemme at implementere, er WCF arkitektonisk mere robust end webservice. Webtjenester kan kun hostes i IIS, og sikkerheden er begrænset. Men WCF kan hostes i IIS, selvværtsservere med konsolapplikationer eller Win NT-tjenester eller enhver anden server. I modsætning til webtjenester understøtter WCF desuden binær. NET –. NET-kommunikation, distribuerede transaktioner, WS--specifikationer, meddelelser i kø og afslappende kommunikation.