Как я могу использовать несколько баз данных в веб-приложении, использующем Orchard CMS? Как указать это в файле settings.txt? - PullRequest
3 голосов
/ 24 апреля 2019

Я работаю над веб-приложением, которое использует платформу Orchard CMS для использования модульной мультитенантной функции. У меня есть несколько модулей, и все они отлично работают с текущей базой данных SQL-сервера (скажем, DB1), о которой я упоминал в Файл settings.txt. Теперь у меня появилось требование, в котором один из моих модулей должен взаимодействовать с другой базой данных (скажем, DB2), отличной от той, которая указана в файле settings.txt. Как только этот модуль будет взаимодействовать с новой базой данных (DB2), чтобы все остальные модули связывались с DB1? Как я могу направить свой FluentNHibernate только в этом модуле для использования новой базы данных (DB2)?

1 Ответ

1 голос
/ 26 апреля 2019

Если вам просто нужно выполнить какой-то SQL для второй базы данных, вам просто нужно подавить транзакцию Орчард следующим образом:

const string connectionString = "...";
var connection = new SqlConnection(connectionString);

using (new TransactionScope(TransactionScopeOption.Suppress)) {
    connection.Open();
    ...
    connection.Close();
}
...