Могу ли я отключить NHibernate ShowSQL после начальной настройки (во время выполнения) - PullRequest
6 голосов
/ 10 ноября 2008

Моя конфигурация NHibernate установлена ​​для показа sql для всех взаимодействий. Из-за этого некоторые из моих более крупных интеграционных тестов работают плохо (особенно при создании отчета о тестировании).

Есть ли способ отключить ShowSql во время выполнения, а затем включить его снова программно.

1 Ответ

3 голосов
/ 10 ноября 2008

Вы можете использовать SetProperties () для вашего объекта конфигурации во время выполнения, а затем создать SessionFactory из этой конфигурации. SetProperties принимает словарь в качестве параметра. Затем новый SessionFactory будет использовать новые параметры конфигурации.

        IDictionary<string, string> props = new Dictionary<string, string>();
        props["show_sql"] = "true";

        Configuration config = new NHibernate.Cfg.Configuration();
        config.SetProperties(props);
        config.Configure();
        config.AddAssembly(typeof(User).Assembly);

        ISessionFactory factory = config.BuildSessionFactory();

Для получения дополнительной информации, проверьте этот раздел документов: Конфигурация ISessionFactory

Надеюсь, это поможет.

/ Erik

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...