NHibernate集合的二级缓存

NHibernate集合的二级缓存,nhibernate,caching,Nhibernate,Caching,我在解决如何正确缓存NHibernate中的一对多或多对多关系时遇到困难 例如,office类可能具有以下映射: public OfficeDbMap() { ... HasMany(x => x.Employees) .Cache.NonStrictReadWrite(); } 但是,我发现,当我删除一名员工时(没有明确删除其与办公室的关系),office->employees的缓存不会失效,该员工会继续出现在办公室的员工列表中 我怀疑这可能与缓存区域有

我在解决如何正确缓存NHibernate中的一对多或多对多关系时遇到困难

例如,office类可能具有以下映射:

public OfficeDbMap()
{
    ...
    HasMany(x => x.Employees)
        .Cache.NonStrictReadWrite();
}
但是,我发现,当我删除一名员工时(没有明确删除其与办公室的关系),office->employees的缓存不会失效,该员工会继续出现在办公室的员工列表中


我怀疑这可能与缓存区域有关,但我不知道该区域应该是办公室的区域还是员工的区域(实际上我已经尝试指定了这两个区域,但都不起作用)。

问题可能是
非strictradwrite
配置
您必须使用。

问题可能是
非strictreadwrite
配置
您必须使用