gpt4 book ai didi

NHibernate 双向多对多关系缓存问题

转载 作者:行者123 更新时间:2023-12-02 00:39:46 26 4
gpt4 key购买 nike

我遇到了双向 ManyToMany 关系缓存的问题

第一面映射:

        HasManyToMany(x => x.Jobs)
.Table("ProfileSuggestStoryJob")
.AsSet()
.Cascade.None()
.ParentKeyColumn("ProfileSuggestStoryId")
.ChildKeyColumn("JobId")
.Cache.ReadWrite();

第二面映射:

        HasManyToMany(x => x.SuggestedProfiles)
.Table("ProfileSuggestStoryJob")
.AsSet()
.Cascade.None()
.ParentKeyColumn("JobId")
.ChildKeyColumn("ProfileSuggestStoryId")
.Inverse().Cache.ReadWrite();

第一方负责插入/更新/删除,实体存储良好。但是在第二侧,缓存没有更新,并且集合不包含最近添加的实体。

没有缓存,一切正常......

最佳答案

关系的每一方都有自己的缓存; NHibernate 不会因为第一端的变化而使第二端的缓存失效。

您可以使用 SessionFactory.EvictCollection 手动使其失效。

关于NHibernate 双向多对多关系缓存问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3005315/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com