在我正在开发的当前应用程序中,我使用 Fluent NHibernate 来配置 NHibernate 以用作 ORM。我希望能够为应用程序中使用的所有表名添加前缀,这样如果我使用已经为另一个应用程序提供服务的数据库,两个应用程序之间就不会发生命名冲突。
例如,如果我想添加前缀 Portal_
到每张 table ,Users
表将变成 Portal_Users
.
当然,我知道如何在每个映射文件中配置每个表名,但这对于我正在尝试做的事情来说并不是一个很好的解决方案。如果我想更改前缀,我将被迫更改每个映射文件。我希望能够在我的代码或配置中的一个地方添加(或更改)所有表名的前缀。
如何使用 NHibernate(或 Fluent NHibernate)为应用程序中的所有表名添加前缀?
最佳答案
您可以实现自己的 INamingStrategy并为您的配置指定它:
Configuration config = new Configuration();
config.SetNamingStrategy(new MyTablePrefixStrategy());
关于nhibernate - 如何配置 NHibernate(或 Fluent NHib)以向所有表名添加表名前缀?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1520702/