WCF

Trasferimento BLOB tramite ADO.NET Data Services

Durante l’utilizzo di ADO.NET Data Services vi capiterà sicuramente di dover salvare imamgini o documenti nel database. Se la loro dimensione è superiorer a 64Kb dovete configurare manualmente i parametri dell’host del servizio. In giro su internet ci sono moltissimi blog che spiegano come farlo, però c’è una nota importantissima da tenere a mente per evitare di perdere ore e ore (o giorni e giorni) inutilmente. Un esempio tipico di web.config è il seguente: 1: <system.serviceModel> 2: <services> ...

Quanto ho imparato sul lavoro !

Adesso che sto postando sul blog con più frequenza mi accorgo di quante cose ho approfondito negli ultimi anni grazie al progetto SOA interamente basato su piattaforma Microsoft a cui ho partecipato e mi rendo conto di essere stato più che fortunato per avervi partecipato e mi sento in dovere di ringraziare l'Enterprise Architect Stefano Bassi per avermi dato così tanta fiducia. Ho imparato di tutto di più: SOA poi diventata Event-Driven SOA Indigo poi diventato WCF Software Factory con GAX/GAT customizzate per NHibernate, WCF, Smart Client,...

Mio articolo Biztalk, SOA e VSTS su ToolNews di Dicembre

Su ToolNews di Dicembre era uscito un mio articolo su Biztalk, SOA e VSTS ! Mi ero dimenticato di postarlo. Grande soddisfazione personale :)

WCF = Windows Configuration Foundation

Dopo l'ennesimo cliente/collega che mi ha fatto notare quanto sia complessa la gestione della configurazione WCF, mi è venuto in mente che probabilmente il nome è stato scelto con un criterio ben preciso:  WCF = Windows Configuration Foundation altro che Communication :) E' vero che i programmatori sono felicissimi, perchè adesso nel codice bastano pochi attributi per creare delle comunicazioni tra macchine in un lampo con transazioni distribuite, singleton, pattern async, etc., e tutti pensano grande, adesso è tutto più semplice ! Come mai prima non era così ? Risposta semplice: la complessità c'è ancora, ma è stata spostata nella configurazione dei...

NHibernate Fetch in servizi WCF

Se sviluppate servizi WCF sessionless con NHibernate il lazy loading non potete utilizzarlo. Questo implica che l'ottimizzazione sul fetching utilizzata da NHibernate durante le select di relazioni 1-many o many-to-many non è più valida e va sostituita da un'altra strategia. Per chiarire la cosa: elemento padre A con 2 relazioni a 2 tabelle B e C. per Default la strategia di fetching utilizzata da NHibernate è select che implica che una seconda select venga utilizzata per recuperare i figli di un elemento (su richiesta se lazy loading è attivo). Chiaramente se lazy loading è false, ogni get di un...

DataContractSerializer e XMLAttribute

Ho appena scoperto una cosa che mi ha lasciato di stucco. Il DataContractSerializer utilizzato di default da WCF non supporta gli XMLAttribute, ma solo gli XMLElement. Quindi un poveretto come me che deve leggere tramite Biztalk un messaggio XML con attributi da un sistema Java e girarlo a WCF (e viceversa) si trova costretto ad usare il mapping di Biztalk per passare da uno schema con attributi ad uno senza oppure switchare dal DataContractSerializer all'XMLSerializer nel servizio WCF con tutto ciò che ne deriva: Modifica totale del funzionamento Definizione esplicita di cosa serializzare e cosa no (XMLIgnore), perchè il buon XMLSerializer serializza di...

Web Service Factory December con bachi

Finalmente sonoriuscito ad installare la release finale della nuova Web Service Factory e devo dire che francamente mi aspettavo di più, ci sono ancora bachi nella gestione di parametri di tipo Array nella Data Guidance, manca la funzione di Auto Map dei parametri delle stored procedure e dei translators (che avevo suggerito e che mi sono sviluppato a mano), ci sono degli errori nella creazione della stored procedure RethrowError. Insomma direi che come introduzione alle Software Factory può andare, però non è ancora abbastanza, noi abbiamo già modificato parecchio la versione precedente aggiungendo nuove funzionalità e correggendo alcuni bachi, a questo punto...

WCF Software Factory December Release

Ce l'abbiamo fatta ! La release finale della Software Factory era stata compilata il 21/12 dai raggazzi di P&P in Microsoft, però a causa di tempeste, neve, blackout & C. è stata pubblicata su MSDN solo stanotte ed è prelevabile a questo link : http://msdn2.microsoft.com/en-us/library/aa480534.aspx Personalmente ho qualche problemino nella rimozione della precedente .... segnalerò la cosa sul loro forum. powered by IMHO 1.3

Biztalk 2006, i Web Service e WCF

Per tutti coloro che usano Biztalk 2006 (quanti siamo 5, 10 ? Scherzo dai ), segnalo un utile link che contiene delle considerazioni sull'uso dei Web Service. L'ultima innocua riga dice : The Add Web Reference do not support the Web Services Description Language (WSDL) import element. Forse il team di WCF non ha tenuto la cosa in considerazione, perchè il comportamento di default di WCF (non modificabile almeno fino alla RC1) è proprio quello di usare l'elemento import per non creare un file wsdl monolitico con tutti gli schemi XSD all'interno. Risultato : Non è possibile richiamare direttamente Web Service esposti da WCF tramite il...

Progetto su .NET 3.0, Biztalk 2006 R2 & C. (ci siamo quasi)

Incredibile, ma vero. Il super progetto che inizialmente sembrava completamente impossibile sta invece pian piano prendendo forma. La presentazione del prototipo è prevista per fine novembre e il tutto comincia a girare. Devo ammettere che i requisiti sono stati leggermente rivisti e modificati durante questi mesi, però ci siamo quasi. Servizi distribuiti basati su WCF (NetTcp, MSMQ, MSMQIntegration, etc.), Biztalk 2006 come Message Broker e BPM, SQL 2005 come Database, vari device hardware da programmare (mi fermo per l'NDA firmato) Ho imparato moltissime cose e spero presto di poter preparare qualcosa per Ugidotnet. In particolare ho trovato (dopo giorni e giorni...

Adapter WCF per Biztalk 2006

Per chi fosse interessato, su CodePlex è disponibile un adapter WCF per Biztalk 2006 in versione Alpha 2 (sembra funzionare ....). In Release è disponibile l'adapter che è facilmente installabile, però consiglio di scaricare anche il Source Code che contiene una demo dove è possibile vedere esattamente come funziona il tutto.Dalle prime prove sembra girare tutto correttamente, anche se nello scenario presentato c'è una semplice ReceiveLocation in PassThruReceive e delle SendPort che hanno come Filter il nome della ReceivePort da cui arriva il messaggio in Biztalk, che viene usato come semplice multicast engine. Ho cercato di utilizzato un XMLReceive o una...

Progetto su .NET 3.0, Biztalk 2006 R2 & C.

Devo ancora capire se sia un bene o un male, però mi trovo in un team che avrà il compito di ridisegnare completamente l'architettura software di una multinazionale !!!! Come se partisse da 0 !  E la cosa bella è che il cliente vuole solo tecnologia Microsoft come : ...