Możesz łatwo użyć NHibernate, aby Twoja aplikacja była niezależna od bazy danych, postępując zgodnie z kilkoma podstawowymi praktykami:
- Najpierw zaprojektuj swój model obiektowy.
- Nie używaj żadnego kodu specyficznego dla bazy danych. Potrzebujesz kogoś z dobrym doświadczeniem w C#, a nie programisty Oracle. Nie polegaj na takich rzeczach jak wyzwalacze, procedury składowane itp.
- Niech NHibernate generuje schematy DB przynajmniej na początku (możesz później dostosować takie rzeczy jak indeksy). Wybierze najlepsze dostępne typy danych dla każdego DB.
- Użyj niezależnego od bazy danych generatora POID (
hilo
lubguid
) zamiast sekwencji lub tożsamości. - Staraj się unikać używania SQL. HQL i Linq działają dobrze w 99% przypadków.
- Unikaj funkcji NH, które nie są obsługiwane przez wszystkie docelowe bazy danych (na przykład Future, MultiCriteria itp.)
NHibernate ma świetną społeczność. Zawsze możesz zadawać pytania na http://groups.google.com/group/nhusers oprócz publikowania tutaj.