Напълно съм предубеден, но бих отишъл на хибернация. Успях, с някои настройки, да накарам същия DAL код да работи с Access (за доставка на компактдиск), Sql Server (за корпоративни) и MySql (за смях). Това е преди няколко години и трябваше да се уверя, че имената на полета/таблиците са валидни във всички среди. Освен това NHibernate направи останалото - брилянтно.