WCF sostituisce tutte le tecnologie di servizi Web precedenti di Microsoft. Fa anche molto di più di ciò che viene tradizionalmente considerato come "servizi web".
I "servizi web" WCF fanno parte di uno spettro molto più ampio di comunicazioni remote abilitate tramite WCF. Otterrai un grado molto più elevato di flessibilità e portabilità facendo le cose in WCF rispetto al tradizionale ASMX perché WCF è progettato, da zero, per riassumere tutte le diverse infrastrutture di programmazione distribuite offerte da Microsoft. Un endpoint in WCF può essere comunicato con la stessa facilità su SOAP / XML come può su TCP / binario e per cambiare questo mezzo è semplicemente un file di configurazione mod. In teoria, questo riduce la quantità di nuovo codice necessario durante il porting o la modifica delle esigenze aziendali, degli obiettivi, ecc.
ASMX is older than WCF, and anything ASMX can do so can WCF (and more). Fondamentalmente puoi vedere WCF come un tentativo di raggruppare logicamente tutti i diversi modi per far comunicare due app nel mondo di Microsoft; ASMX era solo uno di questi molti modi e quindi è ora raggruppato sotto l'ombrello delle capacità WCF.
È possibile accedere ai servizi Web solo tramite HTTP e funziona in ambienti senza stato, dove WCF è flessibile perché i suoi servizi possono essere ospitati in diversi tipi di applicazioni. Gli scenari comuni per l'hosting dei servizi WCF sono IIS, WAS, Self-hosting, Managed Windows Service.
La differenza principale è che i servizi Web utilizzano XmlSerializer. Ma WCF usa DataContractSerializer che è migliore in termini di prestazioni rispetto a XmlSerializer.
In quali scenari deve essere utilizzato WCF
- Un servizio sicuro per elaborare le transazioni commerciali. Un servizio che
- fornisce dati correnti ad altri, come un bollettino sul traffico o altro
- servizio di monitoraggio. Un servizio di chat che consente a due persone di
- comunicare o scambiare dati in tempo reale. Un'applicazione dashboard
- che esegue il polling di uno o più servizi per i dati e li presenta in una logica
- presentazione. Esporre un flusso di lavoro implementato utilizzando il flusso di lavoro di Windows
- Foundation come servizio WCF. Un'applicazione Silverlight per eseguire il polling di un file
- servizio per gli ultimi feed di dati.
Caratteristiche di WCF
- Orientamento al servizio
- Interoperabilità
- Pattern di messaggi multipli
- Metadati di servizio
- Contratti sui dati
- Sicurezza
- Trasporti e codifiche multiple
- Messaggi affidabili e in coda
- Messaggi durevoli
- Transazioni
- Supporto AJAX e REST
- Estensibilità
fonte: principale fonte di testo