.net 是否可以通过配置将Entity Framework Core>= 7.0配置为使用List< T>而不是HashSet< T>?

bnl4lu3b  于 2023-01-03  发布在  .NET
关注(0)|答案(1)|浏览(86)

实体框架〉= 7.0提供HashSet<T>作为1-nm-n关联的实现在我的例子中,这些关联类型为ICollection<T>HashSet<T>对我不起作用,因为JSON PATCHRFC 6902)标准,当涉及到修补嵌套集合(即数组)时,它需要列表数据结构语义(例如索引集合、FIFO等)。
因此,我希望避免大规模的重构,这将涉及将关联类型指定为IList<T>,从而使DTO不受JSON PATCH实现细节的影响。
是否可以通过配置(代码优先)将实体框架核心配置为使用List<T>而不是HashSet<T>

omvjsjqw

omvjsjqw1#

您是否已经检查了新的拦截器-IMaterializationInterceptor?https://devblogs.microsoft.com/dotnet/announcing-ef7/#materialization-interception。
也许它允许你在初始化后修改属性?无论如何,我不确定导航属性-但是,你应该给予一下,看看它的可能性。

相关问题