Для простоты. Я использую Automapping Fluent NHibernate в сочетании с SchemaUpdate NHibernate во время выполнения. При каждом запуске Automapper создает сопоставления для всех классов сущностей, а SchemaUpdate применяет схему к существующей базе данных. Я был приятно удивлен, что он работает правильно и с пустой базой данных. До сих пор он отлично работал в среде разработки и позволил мне довольно быстро реагировать на ошибки.
У меня вопрос, достаточно ли он надежен, чтобы оставить его в рабочем коде? Очевидно, что он не должен запускаться каждый раз, когда программа запускается в производственной среде, но это было бы полезно для дополнительных обновлений продукта (хотя я не планирую вносить какие-либо существенные изменения в домен после того, как продукт поставляется).
(Возможно, мой реальный вопрос должен состоять в том, насколько безопасно использовать эти два инструмента в сочетании?)
Обновление
Приложение имеет две версии: автономный рабочий стол и многопользовательский клиент / сервер. Также из-за специфики бизнес-сферы (налоговое программное обеспечение) я могу позволить себе ежегодно начинать с чистой базы данных.