agosto 2006 Blog Posts
Igor tempo fa ha scritto qualcosa in proposito, io oggi ne ho parlato un po'
con Simone su messenger. Di cosa parlo? Di Community
Credit.
Ho provato questo mese a fare quest'esperienza, sfruttando parte delle ferie
per pubblicare alcuni articoli che avevo in mente da un po' e che, per pigrizia
e scarso tempo a disposizione, non mi ero mai messo a scrivere. In ogni modo,
l'idea che mi son fatto è piuttosto negativa, perché a mio modo di vedere tutto
il discorso è un po' una forzatura a quella sorta di volontariato attivo
che è la vita di community. E come ogni...
Dopo il precedente, ho pensato di scrivere un altro piccolo articolo su NHibernate,
questa volta a proposito del mapping di classi in relazione di ereditarietà tra
di loro, con tanto di nuova applicazioncina di esempio
Chi fosse interessato alla lettura, può trovarlo seguendo questo link.
powered by IMHO 1.3
C'è un piccolo problemino con l'installazione di WSE 3.0
se si usa una versione di Windows differente da quella inglese. Visual Studio,
infatti, ricerca il plugin nel percorso
%ALLUSERSPROFILE%\Application
Data\Microsoft\MSEnvShared\Addins
mentre il setup di WSE 3.0 installa
l'add-in nel percorso
%ALLUSERSPROFILE%\Dati
Applicazioni\Microsoft\MSEnvShared\Addins
Il risultato è che, aprendo il menu
contestuale di un progetto di Web Service, non troviamo la voce "WSE
Settings 3.0..." per abilitare e configurare i WebService Enhancements per
quel progetto.
La soluzione è semplice, ma la posto qui
perché mi ha fatto perdere parecchio tempo; basta...
Come si fa a bloggare senza tutte le emoticon già configurate?
1-0 per il Boschin, io resto con lui!
powered by IMHO 1.3
Il
LazyLoad in NHibernate non si limita solo ai casi di relazioni Master/Detail:
questo framework, infatti, mette a disposizione uno strumento estremamente
completo, che permette di caricare al momento opportuno qualsiasi
entity.
Visto che il 99% degli esempi che si trovano in
rete riguardano però solo il primo caso, ho scritto un piccolo articolo che
approfondisce un po' il funzionamento del Lazy Load sviscerandolo un pochino di
più (non molto, eh! ), con tanto di applicazioncina di esempio.
Spero di aver fatto una cosa gradita, trovate tutto
a questo link. Se l'idea vi piace, mandatemi qualche
feedback, così magari posso proseguire la serie...
AnkhSVN, il client di Subversion per VS2005, alcune
volte ha bisogno di effettuare una pulizia delle cartelle di sistema tramite il
comando CleanUp.
Purtroppo spesso e volentieri, questo comando si lamenta perché in un qualche
subfolder di un remotissimo altro subfolder della structure della nostra
soluzione, non trova una fantomatica cartella tmp. E' un bug noto,
facilmente risolvibile creando una directory vuota nella posizione voluta, ma
capirete che è un discreto sbattimento farlo a mano, soprattutto quando le
cartelle mancanti sono diverse.
Bene, ho realizzato una piccola console application che fa tutto ciò da sola,
esplorando ricorsivamente tutte le cartelle.
Il codice è...
La creazione di un oggetto di tipo Image da un file
nasconde una piccola insidia. Consideriamo il seguente snippet di codice:
Image myImage = Image.FromFile("filename.jpg")
Ciò che accade dietro le quinte è che nel field
internal IntPtr nativeImage
viene memorizzato un handler al file filename.jpg, che rimane aperto
finché non si richiama il metodo Dispose() di myImage. Il problema è che,
ovviamente, il file risulta bloccato e il sistema ha una risorsa impegnata;
inoltre, se dimentichiamo di effettuare la Dispose, questa situazione perdura
fino a che non viene effettuato un GarbageCollecting o, al peggio, fino alla
chiusura dell'applicazione.
Come ovviare? Personalmente, quando devo caricare un'immagine da file, faccio
così:
Image myImage;using (Image img = Image.FromFile("filename.jpg"){ myImage = new Bitmap(img);}
Il costruttore...
Già già, finalmente stasera (a tempo di record) hanno
attivato il progetto di NHibernate Domain Mapper su CodePlex. Per ora non abbiam messo su ancora
nulla, lo farò nei prossimi giorni, ma speriamo di riuscire ad approfittare
delle ferie per tirar fuori una prima early build, così potrete anche voi dare
un'occhiata a quello che, per me e Janky, è diventato
il passatempo di quasi ogni sera e ogni weekend.
Se poi ci volete dare anche una mano...
powered by IMHO 1.3
Oggi ho avuto una brutta sorpresa: lavorando con VS2005
ad un progetto WinForms, mi sono trovato nell'assoluta impossibilità di
impostare il DataBinding da designer: ogni volta che provavo ad impostare la
proprietà DataSource di un qualsiasi BindingSource, VS2005 sollevava una
NullReferenceException, mostrava una bella message box con su scritto "Reference
not set to an instance of an object" e buonanotte al secchio.
Pistolando un po' qua e là, alla fine sono riuscito a venirne a capo: si
tratta di un problema che si verifica quando si cambia il naming delle classi,
quando cioé i file Xml contraddistinti dall'estensione .datasource non
sono...
Mi ricollego a quanto già scritto sul mio blog e alla discussione nata su quello di Imperugo, a proposito dell'argomento "ORM fatti in
casa", perché stamattina mi sono imbattuto in un interessante post di Ayende a proposito
delle performance di NHibernate.
Tutto è nato da un post in cui si confrontavano la velocità di questo OR/M e ADO.NET;
beh... sono d'accordo con chi dice che ovviamente NH non può essere più veloce
di ADO.NET per il semplice fatto che è un layer costruito sopra ad
ADO.NET. Ma come si è ripetuto più spesso anche da queste parti, lo
scopo di NH è quello...
Un semplice esempio di come implementare il Drag'n Drop nelle nostre Windows Forms
C.p.l.
Il Model View Presenter è, tra i pattern relativi al
presentation layer, quello che in questo periodo mi intriga di più , perché secondo me riesce a separare la
logica di presentazione con la concreta implementazione dell'interfaccia in un
modo molto più netto di quanto non accada con il "cugino" Model View Controller.
Perché dico questo? Perché 10 minuti fa, sul divano, stavo leggiucchiando l'ultimo MSDN Magazine (o, meglio, l'ultimo che mi è
arrivato) e mi sono imbattuto in un bell'articolo di Jean Paul Boodhoo e ho
pensato di fare cosa gradita segnalandolo Come sempre, è presente anche la
versione online che potete...
Uso Test Driven .NET
da un po' di tempo, ieri sul portatile ho eseguito una nuova installazione, ma
l'analisi del code coverage non voleva saperne di andare. Cerco qualcosa in
rete, nulla di nulla. A quel punto, estremo tentativo: scrivo a Jamie Cansdale, l'autore di questo
tool.
Sorpresa: non passano 2 minuti, mi risponde, mi invita in una chat
privata, mi fa scaricare una sorta di vnc e si mette lui a pistolare per
risolvermi il tutto.
Vi giuro, ci son rimasto di sasso
powered by IMHO 1.3
Come utilizzare VS2005 con Subversion? C.p.l.