Generics 更新具有一对多关系的实体

Generics 更新具有一对多关系的实体,generics,entity-framework-core,Generics,Entity Framework Core,我正在使用通用CRUD方法创建一个通用存储库,以便与所有其他存储库共享。我有所有的工作方法,除了更新的一个 public virtual async Task Update(T entity) { _context.Attach(entity).State = EntityState.Modified; } 我正在对这个模型进行测试(实体只持有一个在所有实体之间共享的Id属性): 用于necedor的公共类:实体 { [必需] 公共字符串Nome{get

我正在使用通用CRUD方法创建一个通用存储库,以便与所有其他存储库共享。我有所有的工作方法,除了更新的一个

    public virtual async Task Update(T entity)
    {
        _context.Attach(entity).State = EntityState.Modified;
    }
我正在对这个模型进行测试(
实体
只持有一个在所有实体之间共享的
Id
属性):

用于necedor的公共类:实体
{
[必需]
公共字符串Nome{get;set;}
公共字符串描述符{get;set;}
[必需]
公共虚拟IList子项{get;set;}
}
公共类子对象:实体
{
公共字符串SomeValue{get;set;}
公共虚拟Fornecedor Fornecedor{get;set;}
}
当我从API请求中获取模型时,这就是后端应该如何保存它的新实体。也就是说,我只需要用更新函数的
实体
参数中接收的新子项替换旧子项

未在
上下文中更新子属性。saveChangesSync()
,其他每个属性都会更改其应该如何更新。我能做些什么来解决这个问题,但仍然保持它的通用方面?我的意思是,它应该支持我在实体上需要的任意多个“一对多关系”,而无需手动将它们添加到某种if语句中

任何指导都将不胜感激

public class Fornecedor : Entity
{
    [Required]
    public string Nome { get; set; }
    public string Descricao { get; set; }
    [Required]
    public virtual IList<Child> Children { get; set; }
}

public class Child : Entity
{
    public string SomeValue {get; set; }
    public virtual Fornecedor Fornecedor { get; set; }
}