nhibernate.config против web.config - PullRequest
       14

nhibernate.config против web.config

2 голосов
/ 21 декабря 2010

В настоящее время у меня есть проект ASP.NET MVC, построенный на основе архитектуры S # arp и NHibernate.В настоящее время у меня есть отдельный файл nhibernate.config для моей конфигурации nhibernate.Я подумываю переместить его в web.config, поскольку я хочу иметь возможность обновить мою конфигурацию nhibernate и чтобы она (эффективно) вступила в силу немедленно.Есть несколько других способов, которыми я мог бы достичь этого, от простой перезапуска пула приложений после внесения изменений до использования класса FileSystemWatcher для обнаружения изменений в nhibernate.config.Однако я думаю, что перенести конфигурацию в web.config проще всего.

Я думаю, единственное преимущество наличия конфигурации nhibernate в своем собственном файле - это то, что она делает вашу конфигурацию немного более модульной.Однако я не вижу в этом огромного преимущества.

Есть ли какие-либо другие преимущества в том, что ваша конфигурация разделена так, как я упускаю?Есть ли какие-либо недостатки в размещении конфигурации nhibernate в файле web.config, которые я не рассматривал?

Я искал аргументы в любом случае и не могу их найти.Некоторые учебные пособия / статьи используют отдельный файл конфигурации, а другие используют web.config.

РЕДАКТИРОВАТЬ: Ответ на вопрос @Jamie Ide

Главное, чего я хочу достичь, этовключение и выключение кэширования второго уровня.Я использую AppFabric для своего кэша второго уровня, и единственный способ найти способ очистки или истечения срока действия кэша вручную - это перезапустить кластер кэша.Мой код обрабатывает AppFabric как недоступный, но исключение, которое выдает клиентская структура приложения, занимает очень много времени, поэтому мой сайт не особенно быстро реагирует в течение (примерно) двух минут или около того, требуется кластер для перезапуска.Я думаю, что было бы лучше просто отключить кэш второго уровня, перезапустить, а затем снова включить его.Я понимаю, что обновление конфигурации потребует перезагрузки, но это должно произойти, когда я редактирую web.config - я просто не хочу делать перезагрузку вручную.

Ответы [ 2 ]

1 голос
/ 21 декабря 2010

Я думаю, единственное преимущество наличия конфигурации nhibernate в ее собственном файле - это то, что она делает вашу конфигурацию немного более модульной. Однако я не вижу в этом огромного преимущества.

Я думаю, что это довольно большое преимущество и хорошая причина разделять их, но Web.config был значительно уменьшен, так что это не столь веская причина, как раньше. SessionFactory обычно создается с использованием конфигурации при запуске, поэтому для внесения изменений в конфигурацию NHibernate в любом случае потребуется перезапуск приложения. Какие изменения нужно вносить на лету?

1 голос
/ 21 декабря 2010

Вы правы во всех отношениях, о которых вы думали и взвешивали. Отдельная конфигурация nHibernate существует только для того, чтобы не допустить подробных настроек в обычный web.config Слияние его с web.config даст вам очевидные преимущества и никаких побочных эффектов.

...