1

我正在使用nhibernate envers来审核我的数据/保存以前的版本。

我想做的是针对父实体存储以前的版本。
像这样的东西:

public abstract class BookBase
{
    public virtual int ID { get; set; }
    public virtual string Name { get; set; }
    public virtual string Author { get; set; }
}

public class Book : BookBase
{
    public virtual ICollection<BookRevision> PreviousVersions { get; set; }
}

public class BookRevision : BookBase
{
    public virtual int VersionNumber { get; set; }
    public virtual DateTime VersionTimeStamp { get; set; }
}

envers nhibernate 是否可能(使用流利的 nHibernate 进行映射)
我的 envers 配置需要看起来像什么?
我的映射需要是什么样的?

4

1 回答 1

1

Envers 为您处理审计,您不必在域模型中定义自己的审计类型。

定义(并正常映射)您的实体

public class Book
{
    public virtual int ID { get; set; }
    public virtual string Name { get; set; }
    public virtual string Author { get; set; }
}

如果您想对 Book 修改进行审核,请像这样配置 Envers

var enversCfg = new FluentConfiguration();
enversCfg.Audit<Book>();
yourNhCoreConfiguration.IntegrateWithEnvers(enversCfg);
于 2012-11-14T14:13:31.097 回答