在FluentNhibernate上禁用表名称双引号

时间:2011-06-08 18:32:44

标签: nhibernate postgresql case case-sensitive quote

我正在将我的应用程序切换到 Postgresql ,我的架构中的所有表都是小写的,当我使用NHibernate进行查询时,它会在映射中为表名添加双引号是在PascalCase中导致查询失败,告诉我该表不存在。

我可以轻松地转到所有映射类并将Table方法更改为小写, 比如从'Table(“UserAccount”)'更改为'Table(“useraccount”)'但是我宁愿不必这样做..

我想知道是否有任何方法可以告诉nhibernate不要在查询表上使用Double引用,这样它就能正确找到它。

我试过这个:

PostgreSQLConfiguration.Standard.Raw("hbm2ddl.keywords","none").ConnectionString(x => x.Is(_connectionString));

它不起作用。我几乎要告诉nhibernate不要担心案件,但要用postgres做这件事有困难。

1 个答案:

答案 0 :(得分:4)

您可以使用Fluent NHibernate的IClassConvention更改此行为。我想根据this问题

,没有别的方法可以做到这一点