如何配置 NHibernate(或 Fluent NHib)以向所有表名添加表名前缀?
在我正在开发的当前应用程序中,我使用 Fluent NHibernate 来配置 NHibernate 以用作 ORM。我希望能够为应用程序中使用的所有表名添加前缀,这样,如果我使用的数据库已经为另一个应用程序提供服务,那么两个应用程序之间就不会出现命名冲突。
因此,例如,如果我想向每个表添加 Portal_
前缀,则 Users
表将变为 Portal_Users
。
当然,我知道如何在每个映射文件中配置每个表名称,但这对于我想要做的事情来说并不是一个好的解决方案。如果我想更改前缀,我将被迫更改每个映射文件。我希望能够在代码或配置中的一个位置添加(或更改)所有表名称的前缀。
如何使用 NHibernate(或 Fluent NHibernate)向应用程序中的所有表名称添加前缀?
In the current application I'm developing I'm using Fluent NHibernate to configure NHibernate for use as an ORM. I want to be able to add a prefix to all the table names used in the application, so that if I use a database that is already servicing another application, there are no naming conflicts between the two applications.
So for instance if I wanted to add a prefix of Portal_
to each table, the Users
table would become Portal_Users
.
Of course, I know how to configure each table name in each mapping file, but that's not really a good solution for what I'm trying to do. If I ever wanted to change the prefix, I would be forced to change each of the mapping files. I want to be able to add (or change) the prefix to all the table names in a single place in my code or configuration.
How does one add a prefix to all table names within an application using NHibernate (or Fluent NHibernate)?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以实现自己的 INamingStrategy 和为您的配置指定它:
You can implement your own INamingStrategy and specify it for your Configuration:
为了顺利实施
......
For a fluent implementation..
......