WCF vs webová služba
Webové služby a Windows Communication Foundations (WCF) jsou dva způsoby komunikace aplikací přes síť.
Více o webových službách
Webové služby jsou součásti aplikací, ke kterým lze přistupovat pomocí otevřených protokolů, jako je SOAP (Simple Object Access Protocol), což je jazyk založený na XML vyvinutý organizací W3C, pro kódování a přenos dat. SOAP používá XML pro popis dat a HTTP pro přenos dat. Hlavními výhodami těchto otevřených protokolů je interoperabilita služeb navzdory rozdílům v platformách a používaných programovacích jazycích. Webové služby používají (WSDL) webové služby Descriptions Language) k popisu služeb a UDDI (Universal Description, Discovery and Integration) k seznamu dostupných služeb. Webové služby nepotřebují ke svému provozu webový prohlížeč ani HTML a mohou nebo nemusí obsahovat grafické uživatelské rozhraní definované aplikací. Webové služby lze implementovat pomocí ASP. NET.
Více o Windows Communication Foundation (WCF)
Windows Communication Foundation byl představen jako náhrada dřívějších platforem webových služeb a při vytváření aplikací využívá architekturu orientovanou na služby. Interoperabilita a vícenásobné vzory zpráv, metadata služeb, datové smlouvy a vícenásobné kódování přenosu jsou funkcemi WCF. Odolné zprávy, AJAX a REST a funkce Secure Transactions dodávají platformě větší všestrannost než dřívější webové služby.
Jaký je rozdíl mezi webovými službami a WCF?
• Webové služby mohou být hostovány v IIS (Internet Information Service) nebo mimo IIS, zatímco WCF mohou být hostovány v IIS, WAS (Windows Activation Service). Služby WCF mohou být obecně hostovány v rámci služby IIS 5.1 nebo 6.0, služby Windows Process Activation Service (WAS), která je poskytována jako součást služby IIS verze 7.0, a v rámci jakékoli aplikace. NET. Pro hostování webové služby v IIS verze 5.1 nebo 6.0 je nutné, aby webové služby používaly HTTP jako komunikační přenosový protokol.
• Na platformě Web Services bude atribut Web Service přidán na začátek třídy, zatímco ve WCF bude atribut Service Contract. Podobně se nad metodu webové služby přidá atribut Web Method, zatímco ve WCF bude nad metodu přidán Smlouva o provozu služby.
• Webové služby používají kódování XML 1.0, MTOM (Message Transmission Optimization Mechanism) a DIME, zatímco WCF používá kódování XML 1.0, MTOM a binární kódování. Obě platformy podporují vlastní metody kódování.
• Platforma webových služeb podporuje serializaci XML, zatímco v WCF platforma služeb podporuje serializaci za běhu.
• Služby WCF mohou být vícevláknové prostřednictvím třídy Service Behavior, zatímco webové služby nemohou být vícevláknové.
• Služby WCF podporují různé typy vazeb, jako je BasicHttpBinding, WSHttpBinding, WSDualHttpBinding, zatímco webové služby pro tento účel používají pouze SOAP nebo XML.
• Webové služby jsou kompilovány do sestavení knihovny tříd. Poskytuje se soubor nazvaný „soubor služby“, který má příponu.asmx a obsahuje direktivu @ WebService, která identifikuje třídu, která obsahuje kód služby a sestavení, ve kterém je umístěna v WCF.