Entity framework core EF核心包括孙辈一般存储

Entity framework core EF核心包括孙辈一般存储,entity-framework-core,Entity Framework Core,我正在使用一个通用存储库来处理EF Core上的急切加载,在这种情况下,我可以加载分类营养素,但如果我尝试加载Nutriente categoriaService.FindBy((i => i.CategoriaNutrientes.Select(x=>x.Nutriente))) 我有一个错误: System.InvalidOperationException:'属性表达式'i=>{from [i]中的多个孩子x。多个孩子选择[x]。孙子}' 无效。表达式应表示属性访问:“t=>

我正在使用一个通用存储库来处理EF Core上的急切加载,在这种情况下,我可以加载分类营养素,但如果我尝试加载Nutriente

categoriaService.FindBy((i => i.CategoriaNutrientes.Select(x=>x.Nutriente)))
我有一个错误:

System.InvalidOperationException:'属性表达式'i=>{from [i]中的多个孩子x。多个孩子选择[x]。孙子}' 无效。表达式应表示属性访问:“t=> t、 “我的财产”。有关包含相关数据的详细信息,请参见 .'

公共类分类:BaseEntidadeExecutora
{
公共Int64 Id{get;set;}
公共字符串{get;set;}
public Int64 QtdeMinimaRefeicao{get;set;}
公共字符串formalcullo{get;set;}
public Int64 NecessidadeDiariaMinima{get;set;}
公共ICollection分类元素{get;set;}
公共ICollection UnidadeEnsinoCategorias{get;set;}
}
公共类三元分类:基本实体
{
公共Int64 IdCategoria{get;set;}
公共Categoria Categoria{get;set;}
公共Int64 IdNutriente{get;set;}
公共营养素营养素{get;set;}
public Int64 NecessidDenutrical{get;set;}
}
categoriaService.FindBy((i=>i.categoriaanutrients.Select(x=>x.Nutriente)))
公共IEnumerable FindBy(参数表达式[]包括)
{
IQueryable集合=实体;
var entity=(includes.Aggregate(set,(current,include)=>current.includes(include)).ToList()??default(ICollection));
}

缺少代码。你以前有过什么
(i=>i.ManyToManyChilds.Select(x=>x.孙子))?你对许多孩子意味着什么?EF Core不支持多对多集合。带有
params Expression[]includes
的模式对EF Core根本不起作用,它需要
Include
/
然后Include
链接,不能用
Expression
表示。这一步有什么解决方法吗?我发现了这个问题:缺少代码。你以前有过什么
(i=>i.ManyToManyChilds.Select(x=>x.孙子))?你对许多孩子意味着什么?EF Core不支持多对多集合。带有
params Expression[]includes
的模式对于EF Core根本不起作用,它需要
Include
/
然后Include
链接,不能用
Expression
表示。您有任何解决此步骤的方法吗?我发现:
public class Categoria:BaseEntidadeExecutora
{
    public Int64 Id { get; set; }
    public string NomeCategoria { get; set; }
    public Int64 QtdeMinimaRefeicao { get; set; }
    public string FormaCalculo { get; set; }
    public Int64 NecessidadeDiariaMinima { get; set; }
    public ICollection<CategoriaNutriente> CategoriaNutrientes { get; set; }
    public ICollection<UnidadeEnsinoCategoria> UnidadeEnsinoCategorias { get; set; }
}

public class CategoriaNutriente : BaseEntity
{
    public Int64 IdCategoria { get; set; }
    public Categoria Categoria {get;set;}
    public Int64 IdNutriente { get; set; }
    public Nutriente Nutriente { get; set; }
    public Int64 NecessidadeNutricional { get; set; }
}

categoriaService.FindBy((i => i.CategoriaNutrientes.Select(x=>x.Nutriente)))

public IEnumerable<T> FindBy(params Expression<Func<T, object>>[] includes)
{
    IQueryable<T> set = entities;

    var entity = (includes.Aggregate(set, (current, include) => current.Include(include)).ToList() ?? default(ICollection<T>));
}