Простой вопрос, я готов поспорить, не очень простой ответ.
Думайте о проекте как Wordpress. База Wordpress великолепна, и разработчики создали ее для расширения с помощью виджетов или плагинов и т. Д.
Теперь подумайте о NHibernate, особенно с Fluent Mappings.
Соедините их вместе, и у вас будет отличная и стабильная "базовая" система, НО, как вы загружаете отображения, представленные из внешних сборок? Я понимаю, что система должна будет загружать сборки на лету, используя отражение, но как вы сконфигурируете nHibernate, при первом запуске, чтобы понять, что из этих сборок должны быть загружены дополнительные объекты? Как вы на них ссылаетесь?
Я знаю, что вы не можете добавлять сопоставления во время выполнения после того, как настройки выполнены, так что вам нужно заново создать SessionFactory. Вот почему я хочу загрузить все необходимые объекты во время выполнения.
Я также знаю, что это может быть несколько достигнуто с помощью Dependancy Injection, но я не хочу идти по этому пути и не хочу иметь при себе экстремальный багаж.
Если обычный старый файл конфигурации nHiberante можно изменить и затем ссылаться на него во время выполнения, чтобы отразить новые сущности, я могу только предположить, что должен быть способ сделать это свободно.
Кроме того, основываясь на ответах: вы делаете конфигурацию из базового проекта или сборки DATA ACCESS?
Спасибо за вашу помощь.