Un po’ ovunque è sconsigliato l’acquisto di spazio web windows per l’hosting del proprio web site su Aruba. Volendo provare un progetto basato sulla Web Client Software Factory ho deciso di acquistare lo spazio su aruba. Purtroppo ho scoperto che non è possibile usare questo pattern sull’hosting in questione.
L’hosting Aruba (così come molti altri) concedono un livello di protezione di tipo medio sui loro server, cosa che rende impossibile l’esecuzione di questo pattern. Viene generata una Security Exception. Exception Details: System.Security.SecurityException: That assembly does not allow partially trusted callers.
Il problema sembrerebbe aggirabile ricompilando gli assembly aggiungendo questa riga di codice [assembly:AllowPartiallyTrustedCallers], ma il team di sviluppo del famoso patter afferma che ciò non risolve la situazione. Al momento l’unica cosa da fare è votare la issue su codeplex in modo da portare all’attenzione degli sviluppatori questa problematica.
Il sistema migliore per sfruttare a pieno la web client software factory (WCSF), così come spiegato nella documentazione ufficiale, è utilizzare degli oggetti business. Fatto sta che in alcuni casi (per vari motivi) potrebbe risultarci utile utilizzare i DataSet e non degli business object. La mia intenzione, durante lo sviluppo di un web application project, era quella di utilizzare i dataset precedentemente “popolati” da alcune chiamate a stored procedures sul databse. Non sapendo esattamente come muovermi restando in linea con l’architettura della WCSF ho chiesto supporto su codeplex.
Dalla discussion è emerso che il miglior modo per implementare questa soluzione è quello di creare uno o più Foundational Module con il DataSet e successivamente esporre un servizio che permetta al resto dell’applicazione di utilizzare i dati.
Un esempio ben fatto è rappresentato da questo E-Commerce Catalog.

Il 21 settembre è stata rilasciata una nuova versione della Web Client Software Factory, versione di cui non è stato rilasciato un file di installazione. Per poterla utilizzare bisogna compilare il progetto Guidance Package, cosa che a me non ha funzionato. La nuova release ha rispetto alla vecchia il vantaggio di supportare AJAX, teconologia indispensabile per le applicazioni web al giorno d’oggi. Per chi, come me, non è riuscito ad installare la nuova versione esiste una soluzione alternativa: rendere la Web Client Software Factory June 2007 “AJAX enabled“.
Per fare ciò basterà creare un nuovo progestto ASP.NET AJAX e copiare nel web config della nostra WCSF le parti mancanti rispetto al web config del progetto appena creato. Per evitare di commettere errori per questa procedura consiglio vivamnete di seguire attentamente questo video.
Ringraziamento particolare per questa dritta va ad Antonio Menna