NHibernate审核侦听器-审核集合时,当前值和以前的值匹配

NHibernate审核侦听器-审核集合时,当前值和以前的值匹配,nhibernate,fluent-nhibernate,interceptor,auditing,Nhibernate,Fluent Nhibernate,Interceptor,Auditing,我正在使用NHibernate审计Inteceptor审计某些值-我继承了EmptyInteceptor并重写了OnFlushDirty public override bool OnFlushDirty(object entity, object id, object[] currentState, object[] previousState, string[] propertyNames, IType[] types) { 在大多数情况下,currentState和previou

我正在使用NHibernate审计Inteceptor审计某些值-我继承了EmptyInteceptor并重写了OnFlushDirty

public override bool OnFlushDirty(object entity, object id, object[] currentState, object[] previousState, string[] propertyNames, IType[] types)
    {
在大多数情况下,currentState和previousState对象是我所期望的-但是我已经映射了一个集合和dosnt工作-previous和current都显示相同的集合值

有人能帮忙吗

这是我正在使用的映射

    public SalesChannelMap()
    {
        Id(x => x.ID).GeneratedBy.Custom<StringTableHiLoGenerator>(a => a.AddParam(NHibernateConstants.MaxLo, Nexus3General.HiLoGeneratorMaxLoSize.ToString()));
        Version(x => x.Version);
        Map(x => x.Name).Unique();
        Map(x => x.Exclusive);
        Map(x => x.Active);
        Map(x => x.Visible);
        Map(x => x.VehicleType);
        Map(x => x.PriceAdjustment);
        Map(x => x.Deleted);
        Map(x => x.FactoryFlag);
        Map(x => x.Initials);
        HasMany(x => x.VehicleIDs).AsBag().Element("VehicleID", m => m.Type<string>()).Table("SalesChannelVehicleLinker"); 
    }
public-SalesChannelMap()
{
Id(x=>x.Id).GeneratedBy.Custom(a=>a.AddParam(NHibernateConstants.MaxLo,Nexus3General.HiLoGeneratorMaxLoSize.ToString());
版本(x=>x.Version);
Map(x=>x.Name).Unique();
Map(x=>x.Exclusive);
Map(x=>x.Active);
映射(x=>x.Visible);
地图(x=>x.VehicleType);
Map(x=>x.1);
映射(x=>x.Deleted);
Map(x=>x.FactoryFlag);
映射(x=>x.首字母);
HasMany(x=>x.VehicleIDs).AsBag().Element(“VehicleID”,m=>m.Type()).Table(“SalesChannelVehicleLink”);
}

发现还有其他事件需要覆盖,特别是与集合有关的事件