【问题标题】:NHibernate.Envers: Configuration by NHibernate core xmlNHibernate.Envers:由 NHibernate 核心 xml 配置
【发布时间】:2012-12-07 11:15:16
【问题描述】:

我的目标是通过配置文件配置 NHibernate.Envers。据我了解文档,应该很容易通过在 NHibernate Core xml 文件中添加一个属性条目来实现。

<?xml version="1.0" encoding="utf-8" ?>
<hibernate-configuration  xmlns="urn:nhibernate-configuration-2.2" >
  <session-factory name="NHibernate.Test">
    ....
    <property name="nhibernate.envers.audit_table_suffix">_history</property>
  </session-factory>
</hibernate-configuration>

但这会导致异常:

“名称”属性无效 - 根据其数据类型“字符串”,值“nhibernate.envers.audit_table_suffix”无效 - 枚举约束失败。

我确实理解异常,NHibernate 核心检查 name 属性中的有效内容。如何设置 NHibernate.Envers 属性?

当我通过代码设置时,相同的属性有效:

        cfg = new Configuration();
        cfg.Configure("NHibernate.cfg.xml");

        // NHibernate.Envers Configuration
        cfg.SetProperty("nhibernate.envers.audit_table_suffix", "_history");

【问题讨论】:

    标签: c# nhibernate


    【解决方案1】:

    很遗憾,文档有误。您不能将它放在您的 NH Core 配置中,因为 NH Core 将对您的 xml 进行架构验证(并且不知道 envers 属性)。

    我会尽快更新 Envers 文档。

    【讨论】:

    • 嗯,好的,那么不可能通过 xml 文件进行配置,对吧?不用担心,我将把有价值的配置选项放在我的应用程序配置中,并相应地设置属性。无论如何,对用户来说可能更容易......
    猜你喜欢
    • 2019-08-29
    • 2015-06-26
    • 1970-01-01
    • 2020-09-08
    • 1970-01-01
    • 2018-11-24
    • 2016-05-20
    • 2017-04-17
    • 2020-04-25
    相关资源
    最近更新 更多