Những gì bạn nên làm là sử dụng công cụ ORM để tóm tắt cơ sở dữ liệu cho bạn (nHibernate) hoặc xác định một tập hợp các giao diện đại diện cho DAL của bạn và sau đó sử dụng triển khai IoC (Ninject, Castle, v.v.) để hoán đổi phần bên dưới triển khai theo ý muốn, miễn là nó triển khai giao diện.
Tuy nhiên, việc thiết kế một giao diện phù hợp với tương lai (tức là có thể đối phó với những khó khăn phức tạp khi làm việc với các cơ sở dữ liệu khác) không đơn giản, vì vậy dù sao thì bạn cũng có thể cần phải thực hiện các thay đổi.
Tôi sẽ làm một trong hai việc, theo thứ tự sau:
- Xem lại nếu bạn thực sự cần hoán đổi cơ sở dữ liệu.
- Đi xuống lộ trình công cụ ORM vì bạn còn rất nhiều việc phải làm.
Một ví dụ điển hình về việc trừu tượng hóa cơ sở dữ liệu, không nhất thiết phải là DAL cho mỗi lần là Khối Ứng dụng Truy cập Dữ liệu Thư viện Doanh nghiệp của Microsoft.