Ich bin völlig voreingenommen, aber ich würde NHibernate gehen. Ich habe es mit einigen Optimierungen geschafft, denselben DAL-Code mit Access (für CD-Lieferung), Sql Server (für Unternehmen) und MySql (zum Spaß) zum Laufen zu bringen. Das ist jetzt ein paar Jahre her, und ich musste sicherstellen, dass die Feld-/Tabellennamen in allen Umgebungen gültig waren. Ansonsten hat NHibernate den Rest erledigt - brillant.