Queryable.Union 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
產生兩個序列的集合聯集。
多載
| 名稱 | Description |
|---|---|
| Union<TSource>(IQueryable<TSource>, IEnumerable<TSource>) |
使用預設相等比較子產生兩個序列的集合聯集。 |
| Union<TSource>(IQueryable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) |
使用指定的 IEqualityComparer<T>產生兩個序列的集合聯集。 |
Union<TSource>(IQueryable<TSource>, IEnumerable<TSource>)
- 來源:
- Queryable.cs
- 來源:
- Queryable.cs
- 來源:
- Queryable.cs
- 來源:
- Queryable.cs
- 來源:
- Queryable.cs
使用預設相等比較子產生兩個序列的集合聯集。
public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
static System::Linq::IQueryable<TSource> ^ Union(System::Linq::IQueryable<TSource> ^ source1, System::Collections::Generic::IEnumerable<TSource> ^ source2);
public static System.Linq.IQueryable<TSource> Union<TSource>(this System.Linq.IQueryable<TSource> source1, System.Collections.Generic.IEnumerable<TSource> source2);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")]
public static System.Linq.IQueryable<TSource> Union<TSource>(this System.Linq.IQueryable<TSource> source1, System.Collections.Generic.IEnumerable<TSource> source2);
static member Union : System.Linq.IQueryable<'Source> * seq<'Source> -> System.Linq.IQueryable<'Source>
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")>]
static member Union : System.Linq.IQueryable<'Source> * seq<'Source> -> System.Linq.IQueryable<'Source>
<Extension()>
Public Function Union(Of TSource) (source1 As IQueryable(Of TSource), source2 As IEnumerable(Of TSource)) As IQueryable(Of TSource)
類型參數
- TSource
輸入序列元素的類型。
參數
- source1
- IQueryable<TSource>
一個序列,其不同元素構成聯集操作的第一集合。
- source2
- IEnumerable<TSource>
一個序列,其不同元素構成聯集操作的第二組集合。
傳回
包含 IQueryable<T> 兩個輸入序列元素(排除重複序列)的 。
- 屬性
例外狀況
source1 或 source2 為 null。
範例
以下程式碼範例示範如何利用該方法 Union<TSource>(IQueryable<TSource>, IEnumerable<TSource>) 取得兩個序列的集合聯集。
int[] ints1 = { 5, 3, 9, 7, 5, 9, 3, 7 };
int[] ints2 = { 8, 3, 6, 4, 4, 9, 1, 0 };
// Get the set union of the items in the two arrays.
IEnumerable<int> union = ints1.AsQueryable().Union(ints2);
foreach (int num in union)
Console.Write("{0} ", num);
/*
This code produces the following output:
5 3 9 7 8 6 4 1 0
*/
Dim ints1() As Integer = {5, 3, 9, 7, 5, 9, 3, 7}
Dim ints2() As Integer = {8, 3, 6, 4, 4, 9, 1, 0}
' Get the set union of the items in the two arrays.
Dim union = ints1.AsQueryable().Union(ints2)
Dim output As New System.Text.StringBuilder
For Each num As Integer In union
output.Append(String.Format("{0} ", num))
Next
' Display the output.
MsgBox(output.ToString())
' This code produces the following output:
' 5 3 9 7 8 6 4 1 0
備註
該 Union<TSource>(IQueryable<TSource>, IEnumerable<TSource>) 方法產生的 是 MethodCallExpression ,代表 Union<TSource>(IQueryable<TSource>, IEnumerable<TSource>) 呼叫本身為一個構造化的泛型方法。 接著將 傳遞MethodCallExpression給CreateQuery<TElement>(Expression)IQueryProvider由參數Provider性質source1所表示的方法。
執行代表呼叫 Union<TSource>(IQueryable<TSource>, IEnumerable<TSource>) 的表達式樹所產生的查詢行為,取決於參數型別 source1 的實作。 預期行為是回傳與 source2 元素source1的集合聯集。
適用於
Union<TSource>(IQueryable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>)
- 來源:
- Queryable.cs
- 來源:
- Queryable.cs
- 來源:
- Queryable.cs
- 來源:
- Queryable.cs
- 來源:
- Queryable.cs
使用指定的 IEqualityComparer<T>產生兩個序列的集合聯集。
public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
static System::Linq::IQueryable<TSource> ^ Union(System::Linq::IQueryable<TSource> ^ source1, System::Collections::Generic::IEnumerable<TSource> ^ source2, System::Collections::Generic::IEqualityComparer<TSource> ^ comparer);
public static System.Linq.IQueryable<TSource> Union<TSource>(this System.Linq.IQueryable<TSource> source1, System.Collections.Generic.IEnumerable<TSource> source2, System.Collections.Generic.IEqualityComparer<TSource> comparer);
public static System.Linq.IQueryable<TSource> Union<TSource>(this System.Linq.IQueryable<TSource> source1, System.Collections.Generic.IEnumerable<TSource> source2, System.Collections.Generic.IEqualityComparer<TSource>? comparer);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")]
public static System.Linq.IQueryable<TSource> Union<TSource>(this System.Linq.IQueryable<TSource> source1, System.Collections.Generic.IEnumerable<TSource> source2, System.Collections.Generic.IEqualityComparer<TSource>? comparer);
static member Union : System.Linq.IQueryable<'Source> * seq<'Source> * System.Collections.Generic.IEqualityComparer<'Source> -> System.Linq.IQueryable<'Source>
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")>]
static member Union : System.Linq.IQueryable<'Source> * seq<'Source> * System.Collections.Generic.IEqualityComparer<'Source> -> System.Linq.IQueryable<'Source>
<Extension()>
Public Function Union(Of TSource) (source1 As IQueryable(Of TSource), source2 As IEnumerable(Of TSource), comparer As IEqualityComparer(Of TSource)) As IQueryable(Of TSource)
類型參數
- TSource
輸入序列元素的類型。
參數
- source1
- IQueryable<TSource>
一個序列,其不同元素構成聯集操作的第一集合。
- source2
- IEnumerable<TSource>
一個序列,其不同元素構成聯集操作的第二組集合。
- comparer
- IEqualityComparer<TSource>
然後 IEqualityComparer<T> 比較價值。
傳回
包含 IQueryable<T> 兩個輸入序列元素(排除重複序列)的 。
- 屬性
例外狀況
source1 或 source2 為 null。
備註
該 Union<TSource>(IQueryable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) 方法產生的 是 MethodCallExpression ,代表 Union<TSource>(IQueryable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) 呼叫本身為一個構造化的泛型方法。 接著將 傳遞MethodCallExpression給CreateQuery<TElement>(Expression)IQueryProvider由參數Provider性質source1所表示的方法。
執行代表呼叫 Union<TSource>(IQueryable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) 的表達式樹所產生的查詢行為,取決於參數型別 source1 的實作。 預期行為是回傳與 source2 元素source1的集合聯集。 該 comparer 參數用於比較數值。