Servicii Web vs. WCF
Ambele servicii Web și WCF sunt tehnologii web dezvoltate de Microsoft. Serviciile Web au fost introduse în versiunile anterioare .NET, în timp ce WCF a fost adăugat în cadrul .NET în versiunile ulterioare. Serviciile Web sunt utilizate pentru a construi aplicații care pot trimite / primi mesaje utilizând SOAP prin HTTP. WCF este pentru construirea de aplicații distribuite pentru schimbul de mesaje utilizând SOAP pe orice protocol de transport.
Servicii Web
Un serviciu Web (uneori cunoscut sub numele de tehnologia ASMX în .NET) este o metodă de comunicare prin rețea. Potrivit W3C, un serviciu Web este un sistem dedicat pentru susținerea tranzacțiilor mașină-mașină prin intermediul unei rețele. Acesta este un API Web descris în WSDL (Web Service Language Language) și serviciile Web sunt de obicei autonome și descriu de sine. Serviciile Web pot fi descoperite folosind protocolul UDDI (Universal Description, Discovery and Integration). Prin schimbul mesajelor SOAP (Simple Object Access Protocol) de obicei prin HTTP (cu XML), alte sisteme pot interacționa cu serviciile Web. Serviciile Web sunt utilizate în numeroase moduri, cum ar fi RPC (Remote Procedure Calls), SOA (Service Oriented Architecture) și REST (Reprezentational Transfer State). Există două metode automatizate de proiectare pentru dezvoltarea serviciilor Web. Abordarea de jos în sus se referă la crearea mai întâi a claselor și apoi la utilizarea instrumentelor de generare WSDL pentru a compune aceste clase ca servicii Web. Abordarea de sus în jos se referă la definirea specificațiilor WSDL și apoi la utilizarea instrumentelor de generare a codurilor pentru a genera clasele corespunzătoare. Serviciile Web au două utilizări majore. Acestea pot fi utilizate ca componente de aplicații reutilizabile și / sau pentru conectarea aplicațiilor web care rulează pe diferite platforme.
WCF
WCF (Windows Communication Foundation) este un .NET API (Application Programming Interface), care oferă un model de programare unificat pentru dezvoltarea de aplicații conectate și orientate spre servicii. Mai exact, este utilizat pentru dezvoltarea și implementarea aplicațiilor distribuite cu SOA. SOA tratează computerele distribuite în care consumatorii consumă servicii. Consumatorii multipli pot consuma un singur serviciu și viceversa. WCF suportă standarde avansate de servicii web, cum ar fi WS-Addressing, WS-ReliableMessaging, WS-Security și RSS syndication (disponibile după .NET 4.0). Un client WCF utilizează un punct final pentru a se conecta la un serviciu WCF. Fiecare serviciu poate avea mai multe puncte finale expuse contractului său. Termenul ABC este folosit pentru a face referire la adresa / obligația / contractul serviciului WCF. Comunicarea dintre clienți și servicii se realizează prin plicuri SOAP.
Care este diferența dintre serviciile Web și WCF?
Există unele diferențe majore între serviciile Web și serviciile WCF. Serviciile Web sunt utilizate pentru a construi aplicații care pot trimite / primi mesaje utilizând SOPA prin HTTP. Cu toate acestea, WCF utilizează pentru a construi aplicații distribuite pentru a schimba mesaje utilizând SOAP și orice protocol de transport, cum ar fi HTTP, TCP, pipe-uri numite și Microsoft Message Queuing (MSMQ) etc. Mai mult, WCF poate fi extins pentru a lucra cu orice alt protocol de transport. Deși serviciile Web sunt foarte simple și ușor de implementat, WCF este mult mai robust decât serviciul Web. Serviciile Web pot fi găzduite numai în IIS, iar securitatea este limitată. Însă WCF poate fi găzduit în serverele IIS, auto-gazdă cu aplicații de consola sau servicii Win NT sau orice alt server. În plus, spre deosebire de serviciile Web, WCF suportă comunicațiile .NET - .NET binare, tranzacțiile distribuite, specificațiile WS- *, mesageria în așteptare și comunicațiile Restful.