EntityFrameworkQueryableExtensions.Include メソッド

定義

オーバーロード

Include<TEntity,TProperty>(IQueryable<TEntity>, Expression<Func<TEntity,TProperty>>)

クエリ結果に含める関連エンティティを指定します。 含めるナビゲーション プロパティは、クエリ対象のエンティティの種類 (TEntity) から始めて指定されます。 含める型のナビゲーション プロパティに基づいて追加の型を含める場合は、この呼び出しの後に に呼び出しを ThenInclude<TEntity,TPreviousProperty,TProperty>(IIncludableQueryable<TEntity, IEnumerable<TPreviousProperty>>, Expression<Func<TPreviousProperty, TProperty>>) チェーンします。

Include<TEntity>(IQueryable<TEntity>, String)

クエリ結果に含める関連エンティティを指定します。 含めるナビゲーション プロパティは、クエリ対象のエンティティの種類 (TEntity) から始めて指定されます。 追加するナビゲーション プロパティは、'.' 文字で区切って追加できます。

Include<TEntity,TProperty>(IQueryable<TEntity>, Expression<Func<TEntity,TProperty>>)

クエリ結果に含める関連エンティティを指定します。 含めるナビゲーション プロパティは、クエリ対象のエンティティの種類 (TEntity) から始めて指定されます。 含める型のナビゲーション プロパティに基づいて追加の型を含める場合は、この呼び出しの後に に呼び出しを ThenInclude<TEntity,TPreviousProperty,TProperty>(IIncludableQueryable<TEntity, IEnumerable<TPreviousProperty>>, Expression<Func<TPreviousProperty, TProperty>>) チェーンします。

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)

型パラメーター

TEntity

クエリ対象のエンティティの種類。

TProperty

含める関連エンティティの型。

パラメーター

source
IQueryable<TEntity>

ソース クエリです。

navigationPropertyPath
Expression<Func<TEntity,TProperty>>

含めるナビゲーション プロパティを表すラムダ式 (t => t.Property1)。

戻り値

関連データが含まれる新しいクエリ。

例外

source または navigationPropertyPathnull です。

次のクエリは、1 つのレベルの関連エンティティを含めて示しています。

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

次のクエリは、同じブランチに 2 つのレベルのエンティティを含めて示しています。

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

次のクエリは、関連データの複数のレベルとブランチを含めて示しています。

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

次のクエリは、キャストを使用して派生型に単一レベルの関連エンティティを含める方法を示しています。

context.Blogs.Include(blog => ((SpecialBlog)blog).SpecialPosts)

次のクエリは、'as' 演算子を使用して、派生型に単一レベルの関連エンティティを含める方法を示しています。

context.Blogs.Include(blog => (blog as SpecialBlog).SpecialPosts)

注釈

詳細と例については、「 関連エンティティの読み込み 」を参照してください。

適用対象

Include<TEntity>(IQueryable<TEntity>, String)

クエリ結果に含める関連エンティティを指定します。 含めるナビゲーション プロパティは、クエリ対象のエンティティの種類 (TEntity) から始めて指定されます。 追加するナビゲーション プロパティは、'.' 文字で区切って追加できます。

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)

型パラメーター

TEntity

クエリ対象のエンティティの種類。

パラメーター

source
IQueryable<TEntity>

ソース クエリです。

navigationPropertyPath
String

含める '.' 区切りナビゲーション プロパティ名の文字列。

戻り値

IQueryable<TEntity>

関連データが含まれる新しいクエリ。

例外

source または navigationPropertyPathnull です。

navigationPropertyPath が空または空白です。

次のクエリは、1 つのレベルの関連エンティティを含めて示しています。

context.Blogs.Include("Posts")

次のクエリは、同じブランチに 2 つのレベルのエンティティを含めて示しています。

context.Blogs.Include("Posts.Tags")

次のクエリは、関連データの複数のレベルとブランチを含めて示しています。

context.Blogs
   .Include("Posts.Tags.TagInfo')
   .Include("Contributors")

注釈

詳細と例については、「 関連エンティティの読み込み 」を参照してください。

適用対象