QueryableExtensions.Include 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
多載
| 名稱 | Description |
|---|---|
| Include(IQueryable, String) |
指定要包含在查詢結果中的相關物件。 |
| Include<T,TProperty>(IQueryable<T>, Expression<Func<T,TProperty>>) |
指定要包含在查詢結果中的相關物件。 |
| Include<T>(IQueryable<T>, String) |
指定要包含在查詢結果中的相關物件。 |
Include(IQueryable, String)
指定要包含在查詢結果中的相關物件。
public static System.Linq.IQueryable Include(this System.Linq.IQueryable source, string path);
static member Include : System.Linq.IQueryable * string -> System.Linq.IQueryable
<Extension()>
Public Function Include (source As IQueryable, path As String) As IQueryable
參數
- source
- IQueryable
該聯絡的來源 IQueryable 是 Include。
- path
- String
查詢結果中要回傳的相關物件的點分列表。
傳回
一個有定義查詢路徑的新物件 IQueryable 。
備註
此擴充方法會呼叫來源 IQueryable 物件的 Include(String) 方法(若存在的話)。 如果來源 IQueryable 沒有匹配方法,那麼這個方法就不會做任何事。 這些 ObjectQuery、 ObjectSet<TEntity>和 DbQueryDbSet 類型都有適當的 Include 方法來呼叫。 路徑是全方位的。 例如,若包含呼叫指示 Include(“Orders.OrderLines”),不僅 OrderLines 會被包含,Orders 也會被包含。 當你呼叫 Include 方法時,查詢路徑僅在回傳的實例 IQueryable上有效。 其他的 IQueryable 實例 以及物件上下文本身則不受影響。 因為 Include 方法會回傳查詢物件,你可以多次 IQueryable 呼叫這個方法,以指定查詢的多條路徑。
適用於
Include<T,TProperty>(IQueryable<T>, Expression<Func<T,TProperty>>)
指定要包含在查詢結果中的相關物件。
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")]
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters")]
public static System.Linq.IQueryable<T> Include<T,TProperty>(this System.Linq.IQueryable<T> source, System.Linq.Expressions.Expression<Func<T,TProperty>> path);
static member Include : System.Linq.IQueryable<'T> * System.Linq.Expressions.Expression<Func<'T, 'Property>> -> System.Linq.IQueryable<'T>
<Extension()>
Public Function Include(Of T, TProperty) (source As IQueryable(Of T), path As Expression(Of Func(Of T, TProperty))) As IQueryable(Of T)
類型參數
- T
被查詢的實體類型。
- TProperty
所包含的航行財產類型。
參數
- source
- IQueryable<T>
來源 IQ 可依據可依據 Include。
- path
- Expression<Func<T,TProperty>>
一個表示包含路徑的 lambda 表達式。
傳回
一個新的 IQueryable<T> ,並定義了查詢路徑。
- 屬性
備註
路徑表達式必須由簡單的屬性存取表達式組成,並呼叫 Select 以在包含集合特有後組合更多包含。 可能的包含路徑範例包括:若要包含單一參考:query。Include(e => e.Level1Reference) 若要包含單一集合:query。Include(e => e.Level1Collection) 若要先包含參考,再加入下一層的參考:query。Include(e => e.Level1Reference.Level2Reference) 若要先包含參考,再包含下一層的集合:query。Include(e => e.Level1Reference.Level2Collection) 若要包含一個集合,然後再包含一個下一層的參考:query。Include(e => e.Level1Collection.Select(l1 => l1.Level2Reference))若要包含一個集合,再包含一個下一層的集合:查詢。Include(e => e.Level1Collection.Select(l1 => l1.Level2Collection))包含一個集合,然後再在下一層的參考:query。Include(e => e.Level1Collection.Select(l1 => l1.Level2Reference))若要包含一個集合,再包含一個下一層的集合:查詢。Include(e => e.Level1Collection.Select(l1 => l1.Level2Collection))若要包含一個集合、一個參考文獻,以及一個向下兩層的參考文獻:查詢。Include(e => e.Level1Collection.Select(l1 => l1.Level2Reference.Level3Reference))若要包含一個集合、一個集合和一個參考,向下兩層:查詢。Include(e => e.Level1Collection.Select(l1 => l1.Level2Collection.Select(l2 => l2.Level3Reference))) 此擴充方法會呼叫來源 IQueryable 物件的 Include(String) 方法(如果存在的話)。 如果 source IQueryable 沒有匹配方法,那麼這個方法就不會做任何事。 實體框架中的 ObjectQuery、ObjectSet、DbQuery 和 DbSet 類型都有適當的 Include 方法來呼叫。 當你呼叫 Include 方法時,查詢路徑僅在回傳的 IQueryable<T> 實例上有效。 其他 IQueryable<T> 實例及物件上下文本身則不受影響。 由於 Include 方法回傳查詢物件,你可以在可 IQueryable<T> 上多次呼叫此方法,指定多條查詢路徑。
適用於
Include<T>(IQueryable<T>, String)
指定要包含在查詢結果中的相關物件。
public static System.Linq.IQueryable<T> Include<T>(this System.Linq.IQueryable<T> source, string path);
static member Include : System.Linq.IQueryable<'T> * string -> System.Linq.IQueryable<'T>
<Extension()>
Public Function Include(Of T) (source As IQueryable(Of T), path As String) As IQueryable(Of T)
類型參數
- T
被查詢的實體類型。
參數
- source
- IQueryable<T>
該聯絡的來源 IQueryable<T> 是 Include。
- path
- String
查詢結果中要回傳的相關物件的點分列表。
傳回
一個有定義查詢路徑的新物件 IQueryable<T> 。
備註
此擴充方法會呼叫來源 IQueryable<T> 物件的 Include(String) 方法(若存在的話)。 如果來源 IQueryable<T> 沒有匹配方法,那麼這個方法就不會做任何事。 這些 ObjectQuery<T>、 ObjectSet<TEntity>和 DbQuery<TResult>DbSet<TEntity> 類型都有適當的 Include 方法來呼叫。 路徑是全方位的。 例如,若包含呼叫指示 Include(“Orders.OrderLines”),不僅 OrderLines 會被包含,Orders 也會被包含。 當你呼叫 Include 方法時,查詢路徑僅在回傳的實例 IQueryable<T>上有效。 其他的 IQueryable<T> 實例 以及物件上下文本身則不受影響。 因為 Include 方法會回傳查詢物件,你可以多次 IQueryable<T> 呼叫這個方法,以指定查詢的多條路徑。