我有一个问题。如何删除一个字段和所有其他一对多关系?
Field has
- List<Years>
Years has
- List<Crop>
Crop has
- List<Pesticide>
- List<Fertilizer>
如果我使用
db.Fields.Remove(field);
它只会删除字段而不是所有相关记录
如果移除一个字段,或者如果我删除一年所有作物将被删除,如何删除所有年份
更新
我试过了:
modelBuilder.Entity<Entity.Field>()
.HasOptional(c => c.Years)
.WithMany();
Query IQueryable<Entity.Field> query = ctx.Set<Entity.Field>()
.Include(c => c.Years);
var list = query.ToList();
但是我收到了这个错误:
错误:MetadataException:声明的导航属性类型FieldManager.Context.Field.Years与指定导航的结果不兼容