Panoramica sulla diffusione WCF
Windows Communication Foundation (WCF) fornisce il supporto per l'esposizione di feed di diffusione da un servizio WCF. La diffusione è un meccanismo di integrazione delle applicazioni in cui un server espone alcuni dati dell'applicazione in un formato interoperativo noto come feed. Un feed è una raccolta di dati dell'applicazione costituito da alcuni metadati a livello feed (titolo, autore, URL e altri metadati) e da una serie di elementi feed. All'interno del feed, gli elementi feed sono di solito organizzati in ordine cronologico inverso. Un elemento feed è costituito da un set standard di metadati di livello feed (titolo, URL, data di creazione, categoria e altri metadati di livello elemento) e da una quantità arbitraria di dati specifici dell'applicazione. I due tipi più comuni di feed di diffusione sono RSS (Really Simple Syndication) 2.0 e Atom 1.0, entrambi supportati da WCF.
Modello a oggetti
WCF definisce un set di classi specifiche della diffusione che consentono di utilizzare feed, elementi feed e metadati correlati in modo indipendente dal formato: SyndicationFeed, SyndicationItem, SyndicationPerson, SyndicationLink e altre classi specifiche della diffusione. WCF definisce inoltre classi di infrastruttura, basate sul modello di programmazione WCF REST, per fornire il supporto della diffusione, tra cui: Atom10FeedFormatter e RSS20FeedFormatter. Le classi formatter di feed supportano la serializzazione del modello a oggetti da e verso RSS 2.0 e Atom 1.0.
Scenari
Un utilizzo comune della diffusione è oggi rappresentato dal blogging, processo con cui l'autore di un blog pubblica periodicamente alcuni tipi di informazioni, tra cui testo, immagini o audio. Anche molti giornali e riviste pubblicano nuove storie o articoli utilizzando la diffusione. Eseguendo la sottoscrizione a un feed di questo genere, un utente può ricevere tutte le nuove informazioni provenienti da tali siti. Anche se la diffusione è più frequentemente associata a blog ed editori, può essere utilizzata con qualsiasi applicazione che esponga una raccolta di informazioni; ad esempio, un database dei bug che si desidera esporre utilizzando un feed di diffusione. È possibile creare un servizio WCF che espone un'operazione denominata CodeDefects. Questa operazione può accettare un parametro che specifica l'indirizzo di posta elettronica della persona di cui si desidera recuperare i bug. Un client può utilizzare l'URL seguente per chiamare l'operazione: http://someserver/bugDatabase/CodeDefects?user=johndoe.
Formati di diffusione
La piattaforma di diffusione WCF supporta RSS 2.0 e Atom 1.0.