我有一个庞大的旧数据模型,该模型由DbContext
表示,还有一大堆IEntityTypeConfiguration<>
实现,这些实现定义了模型中每个实体的配置。
作为最终拆分数据库的第一步,我们在有限的上下文中划分功能。我们希望仅使用特定任务所需的映射来创建较小的上下文。
例如,可能有一个采购订单实体,例如
{
Id=0,
Address = {
Street = "",
City = "",
... etc ...
},
Order = {
}
}
然后在仅关注采购订单及其地址的地址范围内,我们创建了一个小的DbContext
,仅包含这两个实体的类型配置。但是...失败了:
System.InvalidOperationException:'无法确定 导航属性表示的关系 类型为“订单”的“ PurchaseOrder.Order”。手动配置 关系,或使用“ [NotMapped]”忽略此属性 属性或通过使用“ EntityTypeBuilder.Ignore” “ OnModelCreating”。
我理解投诉,这实际上是有道理的。但我想知道是否有一种方法可以告诉EF Core忽略默认情况下未添加实体类型配置的导航属性,因此我们只能映射所需的现有模型的各个部分,而不必创建特定的实体类型忽略我们要忽略的导航属性的配置。