Я новичок в NHibernate и думал использовать его в проекте, который может поддерживать различные базы данных, такие как (Oracle, MySQL, SQl Server, DB2 и т. Д.), Поскольку этот продукт может быть отправлен другим клиентам которые могут использовать разные базы данных по своему выбору. Однако схема другой базы данных останется такой же.Несколько драйверов базы данных в NHibernate
Как мы знаем, что NHibernate обеспечивает поддержку из коробки для многих баз данных, у меня есть сомнения ниже
1) необходимо специально установить отдельные драйверы баз данных или они приходят с установкой NHibernate ли? Я не мог найти никаких драйверов с установочными файлами NHibernate.
2) Возможно ли, что только изменение параметров конфигурации и т. Д. Мое приложение может разговаривать с разными базами данных? то есть, если код не будет отправлен клиенту, который может использовать какую-либо из базы данных oracle/DB2/SqlServer и т. д., никаких изменений кода, кроме параметров конфигурации, не требуется?
Посмотрите на классы в пространствах имен NHibernate.Dialect и NHibernate.Driver. Также см. Http://nhforge.org/doc/nh/en/index.html#configuration-optional-dialects. Он работает «из коробки», потому что вам не нужно писать код, чтобы он работал. Вы, очевидно, должны иметь соответствующие классы соединений ADO.NET (драйверы a.k.a.), на которые ссылаются. Если эти классы доступны, NHibernate сможет их использовать. –