Windows Communication Foundation: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Rubinbot (discussione | contributi)
m r2.5.4) (Bot: Aggiungo: hu:Windows Communication Foundation
Riga 23:
I contratti non stabiliscono solo quali operazioni si possono invocare su un servizio, ma anche come e quali dati si debbano scambiare. Da questa considerazione si evince che esistono diverse tipologie di contratti racchiuse in tre tipologie: '''''ServiceContract''''', '''''DataContract''''' e '''''MessageContract'''''.
=== I ServiceContract ===
I ServiceContract definiscono il servizio e tutte le API che questi mette a disposizione. La definizione di un simile contratto vede la sua naturale implementazione in un'interfaccia .NET da sviluppare. Di per se, un'interfaccia non ha alcun senso parlando in termini di ''[[Service-oriented architecture]]'' (SOA); infatti, pur definendo metodi e proprietà, non stabilisce se questi debbano essere resi pubblici o meno. Bisogna ricordare che in con SOA la visibilità di un metodo o di una proprietà all'interno di una classe non ha alcun collegamento con la visibilità che può avere all'interno del servizio. A seconda dei casi, un metodo privato di una classe potrebbe diventare un'API del servizio, mentre un metodo pubblico della stessa classe potrebbe non essere pubblicato dal servizio. In WCF, per definire i metodi da pubblicare, bisogna arricchirli con opportuni attributi dichiarati nella definizione dell'interfaccia. Gli attributi da utilizzare sono ServiceContract con la quale marcare l'interfaccia e '''''OperationContract''''', per ogni metodo da pubblicare..
 
=== I DataContract ===