Du kan enkelt använda NHibernate för att göra din applikation databasagnostisk genom att följa några grundläggande metoder:
- Designa din objektmodell först.
- Använd inte någon databasspecifik kod. Du behöver någon med god C#-erfarenhet, inte en Oracle-utvecklare. Lita inte på saker som triggers, lagrade procedurer, etc.
- Låt NHibernate generera DB-scheman åtminstone initialt (du kan justera saker som index senare) Det kommer att välja de bästa tillgängliga datatyperna för varje DB.
- Använd en DB-agnostisk POID-generator (
hilo
ellerguid
) istället för sekvenser eller identitet. - Försök att undvika att använda SQL. HQL och Linq fungerar bra i 99 % av fallen.
- Undvik NH-funktioner som inte stöds av alla dina mål-DB (till exempel Future, MultiCriteria, etc)
NHibernate har en fantastisk gemenskap. Du kan alltid ställa dina frågor på http://groups.google.com/group/nhusers förutom att posta här.