EntityFrameworkQueryableExtensions.Include Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Przeciążenia
Include<TEntity,TProperty>(IQueryable<TEntity>, Expression<Func<TEntity,TProperty>>) |
Określa powiązane jednostki do uwzględnienia w wynikach zapytania. Właściwość nawigacji, która ma zostać uwzględniona, jest określana, począwszy od typu jednostki, której dotyczy zapytanie ( |
Include<TEntity>(IQueryable<TEntity>, String) |
Określa powiązane jednostki do uwzględnienia w wynikach zapytania. Właściwość nawigacji, która ma zostać uwzględniona, jest określana, począwszy od typu jednostki, której dotyczy zapytanie ( |
Include<TEntity,TProperty>(IQueryable<TEntity>, Expression<Func<TEntity,TProperty>>)
Określa powiązane jednostki do uwzględnienia w wynikach zapytania. Właściwość nawigacji, która ma zostać uwzględniona, jest określana, począwszy od typu jednostki, której dotyczy zapytanie (TEntity
). Jeśli chcesz uwzględnić dodatkowe typy na podstawie właściwości nawigacji typu, które są uwzględniane, utwórz łańcuch wywołania po ThenInclude<TEntity,TPreviousProperty,TProperty>(IIncludableQueryable<TEntity,
IEnumerable<TPreviousProperty>>, Expression<Func<TPreviousProperty,
TProperty>>) wywołaniu.
public static Microsoft.EntityFrameworkCore.Query.IIncludableQueryable<TEntity,TProperty> Include<TEntity,TProperty> (this System.Linq.IQueryable<TEntity> source, System.Linq.Expressions.Expression<Func<TEntity,TProperty>> navigationPropertyPath) where TEntity : class;
static member Include : System.Linq.IQueryable<'Entity (requires 'Entity : null)> * System.Linq.Expressions.Expression<Func<'Entity, 'Property>> -> Microsoft.EntityFrameworkCore.Query.IIncludableQueryable<'Entity, 'Property (requires 'Entity : null)> (requires 'Entity : null)
<Extension()>
Public Function Include(Of TEntity As Class, TProperty As Class) (source As IQueryable(Of TEntity), navigationPropertyPath As Expression(Of Func(Of TEntity, TProperty))) As IIncludableQueryable(Of TEntity, TProperty)
Parametry typu
- TEntity
Typ jednostki, która jest odpytywana.
- TProperty
Typ powiązanej jednostki do dołączenia.
Parametry
- source
- IQueryable<TEntity>
Zapytanie źródłowe.
- navigationPropertyPath
- Expression<Func<TEntity,TProperty>>
Wyrażenie lambda reprezentujące właściwość nawigacji do dołączenia (t => t.Property1
).
Zwraca
Nowe zapytanie z dołączonymi powiązanymi danymi.
Wyjątki
source
lub navigationPropertyPath
to null
.
Przykłady
Poniższe zapytanie pokazuje, w tym pojedynczy poziom powiązanych jednostek:
context.Blogs.Include(blog => blog.Posts)
Następujące zapytanie pokazuje, w tym dwa poziomy jednostek w tej samej gałęzi:
context.Blogs
.Include(blog => blog.Posts).ThenInclude(post => post.Tags)
Następujące zapytanie pokazuje, w tym wiele poziomów i gałęzi powiązanych danych:
context.Blogs
.Include(blog => blog.Posts).ThenInclude(post => post.Tags).ThenInclude(tag => tag.TagInfo)
.Include(blog => blog.Contributors)
Poniższe zapytanie pokazuje, w tym pojedynczy poziom powiązanych jednostek w typie pochodnym przy użyciu rzutowania:
context.Blogs.Include(blog => ((SpecialBlog)blog).SpecialPosts)
Poniższe zapytanie pokazuje, w tym pojedynczy poziom powiązanych jednostek w typie pochodnym przy użyciu operatora "as":
context.Blogs.Include(blog => (blog as SpecialBlog).SpecialPosts)
Uwagi
Aby uzyskać więcej informacji i przykładów, zobacz Ładowanie powiązanych jednostek .
Dotyczy
Include<TEntity>(IQueryable<TEntity>, String)
Określa powiązane jednostki do uwzględnienia w wynikach zapytania. Właściwość nawigacji, która ma zostać uwzględniona, jest określana, począwszy od typu jednostki, której dotyczy zapytanie (TEntity
). Dalsze właściwości nawigacji, które mają być dołączone, można dołączyć, oddzielone znakiem "".
public static System.Linq.IQueryable<TEntity> Include<TEntity> (this System.Linq.IQueryable<TEntity> source, string navigationPropertyPath) where TEntity : class;
static member Include : System.Linq.IQueryable<'Entity (requires 'Entity : null)> * string -> System.Linq.IQueryable<'Entity (requires 'Entity : null)> (requires 'Entity : null)
<Extension()>
Public Function Include(Of TEntity As Class) (source As IQueryable(Of TEntity), navigationPropertyPath As String) As IQueryable(Of TEntity)
Parametry typu
- TEntity
Typ jednostki, która jest odpytywana.
Parametry
- source
- IQueryable<TEntity>
Zapytanie źródłowe.
- navigationPropertyPath
- String
Należy uwzględnić ciąg ""." rozdzielone nazwy właściwości nawigacji.
Zwraca
Nowe zapytanie z dołączonymi powiązanymi danymi.
Wyjątki
source
lub navigationPropertyPath
to null
.
navigationPropertyPath
jest pusty lub biały znak.
Przykłady
Poniższe zapytanie pokazuje, w tym pojedynczy poziom powiązanych jednostek:
context.Blogs.Include("Posts")
Następujące zapytanie pokazuje, w tym dwa poziomy jednostek w tej samej gałęzi:
context.Blogs.Include("Posts.Tags")
Następujące zapytanie pokazuje, w tym wiele poziomów i gałęzi powiązanych danych:
context.Blogs
.Include("Posts.Tags.TagInfo')
.Include("Contributors")
Uwagi
Aby uzyskać więcej informacji i przykładów, zobacz Ładowanie powiązanych jednostek .