Responsabilità del Data Access Layer è gestire la persistenza del Domain Model, il cui mapping verso una struttura relazionale apre un vaso di Pandora colmo dei "tipici" requisiti: persistenza transazionale di grafi di oggetti, supporto a differenti DBMS, supporto a strutture dati eterogenee, ... In questa sessione mostreremo come disaccoppiare il Domain Model dallo strato di accesso ai dati, inizialmente implementato basandosi direttamente su ADO.NET per poi introdure l'utilizzo di strumenti ORM.