Archive for July, 2006

Cuyahoga in Asp.net 2.0

Posted on the July 11th, 2006 under Development Life by Marco Trova

Molti progetti sviluppati con Asp.Net v1.1 stanno “soffrendo” la migrazione verso la 2.0. Il modello di programmazione è cambiato.

cuyahoga-logo

 

Cuyahoga, un open source web portal framework semplice, è in questo limbo. I sorgenti disponibili sono per asp.net v1.1.

La gerarchia dei progetti di Cuyahoga è ben strutturata, con i moduli separati dall’applicazione web principale: utilizzano una nota trick di Fritz Onion per creare User Controls (ascx) all’interno di progetti di tipo class library: ciò non è più possibile con vs 2005, se non con il nuovo Visual Studio 2005 Web Application Project Model, come descritto in questa pagina.

Completata questa migrazione, ho notato che molti degli assemblies usati da Cuyahoga sono per .Net v1.1: NHibernate v1.0, FCKEditor v2.2 e Lucene.net v1.4.
Nhibernate è quello che da sporadici problemi nel lazy loading. Migriamo allora su NHibernate v1.2 alpha.

Ma come sempre capita nei progetti, i programmatori cambiano da una versione all’altra comportamenti di default e creano configurazioni aggiuntive per la compatibilità (sarà l’approccio giusto?).

Dall’annuncio di Nhibernate v1.2.0:

-  Support for .NET Framework version 2.0. Generic collections (and any user-supplied collection types) are supported and generic overloads were created for several common methods.
- All classes and collections are now lazily loaded by default (i.e. the default setting for the lazy attribute is now “true”). To aid in the transition, classes used for lazy loading are now validated and an error is thrown if any of their public members are not virtual. This validation can be disabled.

Vuol dire che se utilizzo questa versione di NHibernate “tira” un’eccezione perchè le proprietà delle mie classi ora devono essere virtual perchè NH crei dei proxy per esse. Qui Pierre Henri Kuaté spiega perchè le associazioni e le collezioni sono lazy per default in questa versione.

Si risolve inserendo un “default-lazy” a false e “use_proxy_validator” a false nel .config

Aspetteremo un Cuyahoga “full” .net 2.0.

Campioni del mondo

Posted on the July 10th, 2006 under Development Life by Marco Trova

Chicco festa campioni del mondo
L’ultima volta avevo 12 anni. Mio figlio poco più di un anno.

3° meeting di XE.NET

Posted on the July 8th, 2006 under .NET,Development Life,Life by Marco Trova

Venerdì sera ho partecipato al 3° meeting di Xe.net sugli ORMappers.

Giancarlo Sudano è stato piuttosto brillante ad illustrare NHibernate e le sue potenzialità. Davide Senatore ha condiviso le sue esplorazioni con vari O/R Mappers e portato avanti il suo passionato utilizzo dei DataSets. E’ stata un’occasione per me per imparare da entrambi, visto che mi han lasciato degli spunti che sicuramente approfondirò.

Il mio intervento è cominciato verso le 23. L’ora tarda e i molti contenuti già trattati da chi mi ha preceduto, m’hanno consigliato di stravolgere ciò che mi ero prefissato presentare. Sono andato a braccio e penso s’è visto.
Ho pensato pure di “alleggerire” l’esposizione con alcuni dei miei aneddoti di vita vissuta come consulente, ottenendo apprezzamenti, ma anche critiche.

Che dire? Ero stanco, accaldato ma poi contento del risultato. Vedremo di ripetere l’esperienza.