Differenza tra WCF e servizio Web

WCF vs servizio Web

I servizi Web e Windows Communication Foundations (WCF) sono due metodi che le applicazioni comunicano su una rete.

Ulteriori informazioni sui servizi Web

I servizi Web sono componenti di applicazioni, a cui è possibile accedere tramite protocolli aperti come SOAP (Simple Object Access Protocol), che è un linguaggio basato su XML sviluppato dal W3C, per codificare e trasmettere dati. SOAP utilizza XML per la descrizione dei dati e HTTP per il trasferimento dei dati. I principali vantaggi offerti da questi protocolli aperti sono l'interoperabilità dei servizi, nonostante le differenze nelle piattaforme e nei linguaggi di programmazione utilizzati. Servizi Web utilizzano (WSDL) servizi Web Descrizioni Lingua) per descrivere i servizi e UDDI (Descrizione universale, individuazione e integrazione) per elencare i servizi disponibili. I servizi Web non hanno bisogno di un browser Web o HTML per funzionare e possono o meno contenere una GUI come definito dall'applicazione. I servizi Web possono essere implementati con ASP.NET.

Ulteriori informazioni su Windows Communication Foundation (WCF)

Windows Communication Foundation è stato introdotto per sostituire le precedenti piattaforme di servizi Web e utilizza l'architettura orientata ai servizi nella creazione di applicazioni. Interoperabilità e più modelli di messaggi, metadati del servizio, contratti dati e più codifiche di trasporto sono caratteristiche del WCF. I messaggi durevoli, AJAX e REST e Secure Transactions aggiungono maggiore versatilità alla piattaforma rispetto ai precedenti servizi Web.

Qual è la differenza tra servizi Web e WCF?

• I servizi Web possono essere ospitati in IIS (Internet Information Service) o all'esterno di IIS, mentre WCF può essere ospitato in IIS, WAS (Windows Activation Service). I servizi WCF possono generalmente essere ospitati all'interno di IIS 5.1 o 6.0, il servizio di attivazione del processo di Windows (WAS) fornito come parte di IIS versione 7.0 e all'interno di qualsiasi applicazione .NET. Per ospitare un servizio Web in IIS versione 5.1 o 6.0, è necessario che i servizi Web utilizzino HTTP come protocollo di trasporto delle comunicazioni.

• Nella piattaforma dei servizi Web, l'attributo del servizio Web verrà aggiunto all'inizio della classe mentre, in WCF, sarà presente un attributo Contratto di servizio. Allo stesso modo, l'attributo Metodo Web viene aggiunto all'inizio del metodo del servizio Web mentre, in WCF, il Contratto funzionamento servizio verrà aggiunto al metodo più in alto.

• I servizi Web utilizzano XML 1.0, MTOM (Message Transmission Optimization Mechanism) e le codifiche DIME mentre WCF utilizza codifiche XML 1.0, MTOM e Binary. Entrambe le piattaforme supportano metodi di codifica personalizzati.

• La piattaforma di servizi Web supporta la serializzazione XML mentre, nella WCF, la piattaforma di servizio supporta la serializzazione run time.

• I servizi WCF possono essere multi-threaded tramite la classe di comportamento del servizio, mentre i servizi Web non possono essere multi-thread.

• I servizi WCF supportano diversi tipi di binding come BasicHttpBinding, WSHttpBinding, WSDualHttpBinding mentre i servizi Web utilizzano solo SOAP o XML per questo scopo.

• I servizi Web sono compilati in un assembly di libreria di classi. Viene fornito un file chiamato 'il file di servizio' che ha l'estensione .asmx e contiene la direttiva @ WebService che identifica la classe che contiene il codice per il servizio e l'assembly in cui si trova in WCF.