Spesso mi sono trovato di fronte ad una problematica che sarà capitata ad ognuno di voi: come scrivere un'applicazione che possa supportare piu' database e che sia di facile manutenzione nel tempo?
L'esempio che ho scritto non contiene nulla di innovativo, è solo un mix di tecniche di programmazione già note, che però risolvono agevolmente il problema sopra citato.
L'esempio è costituito da tre progetti: il Business layer, il DataLogic layer, l'Entities e un progettino di test che sfrutta quel modello. A seconda del tipo di database che si specifica nel file .config, viene istanziato quello o quell'altro sqlclient (nel mio caso ho fatto un esempio con SqlClient e OleDB, ma vedrete che è banale estenderlo ad Oracle, MySQL ecc...).
Nota: la mia non è una serie di librerie universali da usare in tutti i progetti, ma un modello di esempio di come dovrebbero essere scritte le librerie di accesso ai dati.
Potete scaricare il progetto da
questo link.
Ogni commento, critica o suggerimento per migliorare il modello è molto ben accetto!