Diferența dintre WCF și serviciul Web

WCF vs serviciul Web

Serviciile Web și fundațiile de comunicații Windows (WCF) sunt două metode pe care aplicațiile le comunică printr-o rețea.

Mai multe despre serviciile Web

Serviciile Web sunt componente ale aplicațiilor, care pot fi accesate utilizând protocoale deschise, cum ar fi SOAP (Simple Object Access Protocol), care este un limbaj bazat pe XML dezvoltat de W3C, pentru a codifica și transmite date. SOAP utilizează XML pentru descrieri de date și HTTP pentru transferul de date. Principalele avantaje oferite de aceste protocoale deschise sunt interoperabilitatea serviciilor, în pofida diferențelor dintre platforme și limbile de programare utilizate. Utilizarea serviciilor Web (WSDL) Web Services Descriptions Language (Limbaj) pentru a descrie serviciile și UDDI (Universal Description, Discovery and Integration) pentru a lista serviciile disponibile. Serviciile Web nu au nevoie de un browser web sau HTML pentru a funcționa și pot sau nu să conțină o interfață grafică definită de aplicație. Serviciile Web pot fi implementate cu ASP.NET.

Mai multe despre Windows Communication Foundation (WCF)

Windows Communication Foundation a fost introdus pentru a înlocui platformele anterioare de servicii web și utilizează arhitectura orientată pe servicii în aplicațiile de construcție. Interoperabilitatea și modelele multiple de mesaje, metadatele de serviciu, contractele de date și codificările multiple de transport sunt caracteristicile WCF. Mesajele durabile, AJAX și REST și funcțiile Secure Transactions adaugă platformei mai multă versatilitate decât serviciile anterioare de web.

Care este diferența dintre serviciile Web și WCF?

• Serviciile Web pot fi găzduite în IIS (Internet Information Service) sau în afara IIS, în timp ce WCF poate fi găzduit în IIS, WAS (Windows Activation Service). Serviciile WCF pot fi, în general, găzduite în cadrul IIS 5.1 sau 6.0, serviciul de activare a proceselor Windows (WAS) care este furnizat ca parte a versiunii 7.0 a IIS și în cadrul oricărei aplicații .NET. Pentru a găzdui un serviciu web în versiunea IIS versiunea 5.1 sau 6.0, este necesar ca serviciile web să utilizeze HTTP ca protocol de transport al comunicațiilor.

• În platforma Web Services, atributul Web Service va fi adăugat la partea de sus a clasei, în timp ce în WCF va fi atribut Contract Service. În mod asemănător, atributul Metodă Web se adaugă în partea superioară a metodei serviciului Web, în ​​timp ce în WCF contractul de operare de servicii va fi adăugat pe metoda de sus.

• Serviciile Web utilizează XML 1.0, MTOM (Mecanism de optimizare a transmiterii mesajelor) și codificări DIME, în timp ce WCF folosește codificări XML 1.0, MTOM și Binare. Ambele platforme acceptă metode personalizate de codificare.

• Platforma de servicii web acceptă Serializarea XML, în timp ce, în platforma WCF, platforma de servicii suportă Serializarea timpului de execuție.

• Serviciile WCF pot fi multi-filetate prin clasa Service Behavior, în timp ce serviciile web nu pot fi multi-filetate.

• Serviciile WCF suportă diferite tipuri de legături, cum ar fi BasicHttpBinding, WSHttpBinding, WSDualHttpBinding, în timp ce serviciile Web folosesc doar SOAP sau XML în acest scop.

• Serviciile Web sunt compilate într-un ansamblu de bibliotecă de clasă. Se furnizează un fișier numit "fișierul de serviciu" care are extensia .asmx și conține o directivă @ WebService care identifică clasa care conține codul pentru serviciu și ansamblul în care se află în WCF.