Я пытаюсь реализовать ThenInclude в Select () по следующей ссылке: https://github.com/beyourmarket/beyourmarket/blob/master/src/Frameworks/Repository.Pattern.Ef6/Repository.cs
До:
internal IQueryable<TEntity> Select(
Expression<Func<TEntity, bool>> filter = null,
Func<IQueryable<TEntity>, IOrderedQueryable<TEntity>> orderBy = null,
List<Expression<Func<TEntity, object>>> includes = null,
int? page = null,
int? pageSize = null)
{
IQueryable<TEntity> query = this._dbSet;
if (includes != null)
{
query = includes.Aggregate(query, (current, include) => current.Include(include));
}
После:
internal IQueryable<TEntity> Select(
Expression<Func<TEntity, bool>> filter = null,
Func<IQueryable<TEntity>, IOrderedQueryable<TEntity>> orderBy = null,
List<Expression<Func<TEntity, object>>> includes = null,
Expression<Func<**???**>> thenInclude = null,
int? page = null,
int? pageSize = null)
{
IQueryable<TEntity> query = this._dbSet;
if (includes != null)
{
if (thenInclude != null)
{
query = includes.Aggregate(query, (current, include) => current.Include(include).ThenInclude(thenInclude));
}
else
{
query = includes.Aggregate(query, (current, include) => current.Include(include));
}
}
ПожалуйстаПомоги мне взглянуть и дать несколько советов.Такой путь возможен или нет.Если да, то каков тип thenInclude (выражение ??? >> thenInclude = null,) выше, большое спасибо.