为了简单起见。我在运行时将 Fluent NHibernate 的 Automapping 与 NHibernate 的 SchemaUpdate 结合使用。每次运行时,Automapper 都会为所有实体类创建映射,并且 SchemaUpdate 将架构应用到现有数据库。我很惊喜地发现它也能在空数据库上正常工作。到目前为止,它在开发环境中运行良好,并且使我能够相当快地响应错误。
我的问题是它是否足够可靠以留在生产代码中。显然,它不需要每次程序在生产环境中启动时都运行,但它对于增量产品更新很有用(尽管我不打算在产品发布后对域进行任何重大更改)。
(也许我真正的问题应该是结合使用这两个工具有多安全?)
更新
该应用程序有两个版本:独立桌面和多用户客户端/服务器。此外,由于业务领域(税务软件)的性质,我每年都可以从一个干净的数据库开始。