EntityFrameworkQueryableExtensions.ThenInclude Método

Definición

Sobrecargas

ThenInclude<TEntity,TPreviousProperty,TProperty>(IIncludableQueryable<TEntity,TPreviousProperty>, Expression<Func<TPreviousProperty,TProperty>>)

Especifica datos relacionados adicionales que se incluirán más en función de un tipo relacionado que se acaba de incluir.

ThenInclude<TEntity,TPreviousProperty,TProperty>(IIncludableQueryable<TEntity, IEnumerable<TPreviousProperty>>, Expression<Func<TPreviousProperty, TProperty>>)

Especifica datos relacionados adicionales que se incluirán más en función de un tipo relacionado que se acaba de incluir.

ThenInclude<TEntity,TPreviousProperty,TProperty>(IIncludableQueryable<TEntity, ICollection<TPreviousProperty>>, Expression<Func<TPreviousProperty, TProperty>>)

Especifica datos relacionados adicionales que se incluirán más en función de un tipo relacionado que se acaba de incluir.

ThenInclude<TEntity,TPreviousProperty,TProperty>(IIncludableQueryable<TEntity,TPreviousProperty>, Expression<Func<TPreviousProperty,TProperty>>)

Especifica datos relacionados adicionales que se incluirán más en función de un tipo relacionado que se acaba de incluir.

public static Microsoft.EntityFrameworkCore.Query.IIncludableQueryable<TEntity,TProperty> ThenInclude<TEntity,TPreviousProperty,TProperty> (this Microsoft.EntityFrameworkCore.Query.IIncludableQueryable<TEntity,TPreviousProperty> source, System.Linq.Expressions.Expression<Func<TPreviousProperty,TProperty>> navigationPropertyPath) where TEntity : class;
static member ThenInclude : Microsoft.EntityFrameworkCore.Query.IIncludableQueryable<'Entity, 'PreviousProperty (requires 'Entity : null)> * System.Linq.Expressions.Expression<Func<'PreviousProperty, 'Property>> -> Microsoft.EntityFrameworkCore.Query.IIncludableQueryable<'Entity, 'Property (requires 'Entity : null)> (requires 'Entity : null)
<Extension()>
Public Function ThenInclude(Of TEntity As Class, TPreviousProperty As Class, TProperty As Class) (source As IIncludableQueryable(Of TEntity, TPreviousProperty), navigationPropertyPath As Expression(Of Func(Of TPreviousProperty, TProperty))) As IIncludableQueryable(Of TEntity, TProperty)

Parámetros de tipo

TEntity

Tipo de entidad que se consulta.

TPreviousProperty

Tipo de la entidad que se acaba de incluir.

TProperty

Tipo de la entidad relacionada que se va a incluir.

Parámetros

source
IIncludableQueryable<TEntity,TPreviousProperty>

Consulta de origen.

navigationPropertyPath
Expression<Func<TPreviousProperty,TProperty>>

Expresión lambda que representa la propiedad de navegación que se va a incluir (t => t.Property1).

Devoluciones

Nueva consulta con los datos relacionados incluidos.

Ejemplos

En la consulta siguiente se muestra cómo incluir un único nivel de entidades relacionadas:

context.Blogs.Include(blog => blog.Posts)

En la consulta siguiente se muestran dos niveles de entidades en la misma rama:

context.Blogs.Include(blog => blog.Posts).ThenInclude(post => post.Tags)

En la consulta siguiente se muestran varios niveles y ramas de datos relacionados:

context.Blogs
   .Include(blog => blog.Posts).ThenInclude(post => post.Tags).ThenInclude(tag => tag.TagInfo)
   .Include(blog => blog.Contributors)

En la consulta siguiente se muestran dos niveles de entidades en la misma rama, la segunda que se encuentra en el tipo derivado:

context.Blogs.Include(blog => blog.Posts).ThenInclude(post => ((SpecialPost)post).SpecialTags)

En la consulta siguiente se muestran dos niveles de entidades en la misma rama, la segunda que se encuentra en el tipo derivado mediante un método alternativo.

context.Blogs.Include(blog => blog.Posts).ThenInclude(post => (post as SpecialPost).SpecialTags)

Comentarios

Consulte Carga de entidades relacionadas para obtener más información y ejemplos.

Se aplica a

ThenInclude<TEntity,TPreviousProperty,TProperty>(IIncludableQueryable<TEntity, IEnumerable<TPreviousProperty>>, Expression<Func<TPreviousProperty, TProperty>>)

Especifica datos relacionados adicionales que se incluirán más en función de un tipo relacionado que se acaba de incluir.

public static Microsoft.EntityFrameworkCore.Query.IIncludableQueryable<TEntity,TProperty> ThenInclude<TEntity,TPreviousProperty,TProperty> (this Microsoft.EntityFrameworkCore.Query.IIncludableQueryable<TEntity,System.Collections.Generic.IEnumerable<TPreviousProperty>> source, System.Linq.Expressions.Expression<Func<TPreviousProperty,TProperty>> navigationPropertyPath) where TEntity : class;
static member ThenInclude : Microsoft.EntityFrameworkCore.Query.IIncludableQueryable<'Entity, seq<'PreviousProperty> (requires 'Entity : null)> * System.Linq.Expressions.Expression<Func<'PreviousProperty, 'Property>> -> Microsoft.EntityFrameworkCore.Query.IIncludableQueryable<'Entity, 'Property (requires 'Entity : null)> (requires 'Entity : null)
<Extension()>
Public Function ThenInclude(Of TEntity As Class, TPreviousProperty As Class, TProperty As Class) (source As IIncludableQueryable(Of TEntity, IEnumerable(Of TPreviousProperty)), navigationPropertyPath As Expression(Of Func(Of TPreviousProperty, TProperty))) As IIncludableQueryable(Of TEntity, TProperty)

Parámetros de tipo

TEntity

Tipo de entidad que se consulta.

TPreviousProperty

Tipo de la entidad que se acaba de incluir.

TProperty

Tipo de la entidad relacionada que se va a incluir.

Parámetros

source
IIncludableQueryable<TEntity,IEnumerable<TPreviousProperty>>

Consulta de origen.

navigationPropertyPath
Expression<Func<TPreviousProperty,TProperty>>

Expresión lambda que representa la propiedad de navegación que se va a incluir (t => t.Property1).

Devoluciones

Nueva consulta con los datos relacionados incluidos.

Ejemplos

En la consulta siguiente se muestra cómo incluir un único nivel de entidades relacionadas:

context.Blogs.Include(blog => blog.Posts)

En la consulta siguiente se muestran dos niveles de entidades en la misma rama:

context.Blogs
   .Include(blog => blog.Posts).ThenInclude(post => post.Tags)

En la consulta siguiente se muestran varios niveles y ramas de datos relacionados:

context.Blogs
   .Include(blog => blog.Posts).ThenInclude(post => post.Tags).ThenInclude(tag => tag.TagInfo)
   .Include(blog => blog.Contributors)

En la consulta siguiente se muestran dos niveles de entidades en la misma rama, la segunda que se encuentra en el tipo derivado mediante la conversión:

context.Blogs.Include(blog => blog.Posts).ThenInclude(post => ((SpecialPost)post).SpecialTags)

En la consulta siguiente se muestran dos niveles de entidades en la misma rama, la segunda que se encuentra en el tipo derivado mediante el as operador .

context.Blogs.Include(blog => blog.Posts).ThenInclude(post => (post as SpecialPost).SpecialTags)

Comentarios

Consulte Carga de entidades relacionadas para obtener más información y ejemplos.

Se aplica a

ThenInclude<TEntity,TPreviousProperty,TProperty>(IIncludableQueryable<TEntity, ICollection<TPreviousProperty>>, Expression<Func<TPreviousProperty, TProperty>>)

Especifica datos relacionados adicionales que se incluirán más en función de un tipo relacionado que se acaba de incluir.

public static Microsoft.EntityFrameworkCore.Query.IIncludableQueryable<TEntity,TProperty> ThenInclude<TEntity,TPreviousProperty,TProperty> (this Microsoft.EntityFrameworkCore.Query.IIncludableQueryable<TEntity,System.Collections.Generic.ICollection<TPreviousProperty>> source, System.Linq.Expressions.Expression<Func<TPreviousProperty,TProperty>> navigationPropertyPath) where TEntity : class;
static member ThenInclude : Microsoft.EntityFrameworkCore.Query.IIncludableQueryable<'Entity, System.Collections.Generic.ICollection<'PreviousProperty> (requires 'Entity : null)> * System.Linq.Expressions.Expression<Func<'PreviousProperty, 'Property>> -> Microsoft.EntityFrameworkCore.Query.IIncludableQueryable<'Entity, 'Property (requires 'Entity : null)> (requires 'Entity : null)
<Extension()>
Public Function ThenInclude(Of TEntity As Class, TPreviousProperty As Class, TProperty As Class) (source As IIncludableQueryable(Of TEntity, ICollection(Of TPreviousProperty)), navigationPropertyPath As Expression(Of Func(Of TPreviousProperty, TProperty))) As IIncludableQueryable(Of TEntity, TProperty)

Parámetros de tipo

TEntity

Tipo de entidad que se consulta.

TPreviousProperty

Tipo de la entidad que se acaba de incluir.

TProperty

Tipo de la entidad relacionada que se va a incluir.

Parámetros

source
IIncludableQueryable<TEntity,ICollection<TPreviousProperty>>

Consulta de origen.

navigationPropertyPath
Expression<Func<TPreviousProperty,TProperty>>

Expresión lambda que representa la propiedad de navegación que se va a incluir (t => t.Property1).

Devoluciones

Nueva consulta con los datos relacionados incluidos.

Ejemplos

En la consulta siguiente se muestra cómo incluir un único nivel de entidades relacionadas.

context.Blogs.Include(blog => blog.Posts);

En la consulta siguiente se muestran dos niveles de entidades en la misma rama.

context.Blogs
    .Include(blog => blog.Posts).ThenInclude(post => post.Tags);

En la consulta siguiente se muestran varios niveles y ramas de datos relacionados.

context.Blogs
    .Include(blog => blog.Posts).ThenInclude(post => post.Tags).ThenInclude(tag => tag.TagInfo)
    .Include(blog => blog.Contributors);

Se aplica a