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