Compartir vía


Queryable.Union Método

Definición

Genera la unión de conjunto de dos secuencias.

Sobrecargas

Nombre Description
Union<TSource>(IQueryable<TSource>, IEnumerable<TSource>)

Genera la unión de conjunto de dos secuencias mediante el comparador de igualdad predeterminado.

Union<TSource>(IQueryable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>)

Genera la unión de conjunto de dos secuencias mediante un IEqualityComparer<T>especificado.

Union<TSource>(IQueryable<TSource>, IEnumerable<TSource>)

Source:
Queryable.cs
Source:
Queryable.cs
Source:
Queryable.cs
Source:
Queryable.cs
Source:
Queryable.cs

Genera la unión de conjunto de dos secuencias mediante el comparador de igualdad predeterminado.

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)

Parámetros de tipo

TSource

Tipo de los elementos de las secuencias de entrada.

Parámetros

source1
IQueryable<TSource>

Secuencia cuyos elementos distintos forman el primer conjunto para la operación de unión.

source2
IEnumerable<TSource>

Secuencia cuyos elementos distintos forman el segundo conjunto para la operación de unión.

Devoluciones

IQueryable<TSource>

que IQueryable<T> contiene los elementos de ambas secuencias de entrada, excepto los duplicados.

Atributos

Excepciones

source1 o source2 es null.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar Union<TSource>(IQueryable<TSource>, IEnumerable<TSource>) para obtener la unión de conjunto de dos secuencias.

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

Comentarios

El Union<TSource>(IQueryable<TSource>, IEnumerable<TSource>) método genera un MethodCallExpression objeto que representa llamarse Union<TSource>(IQueryable<TSource>, IEnumerable<TSource>) a sí mismo como un método genérico construido. A continuación, pasa al MethodCallExpressionCreateQuery<TElement>(Expression) método del IQueryProvider representado por la Provider propiedad del source1 parámetro .

El comportamiento de la consulta que se produce como resultado de ejecutar un árbol de expresión que representa la llamada Union<TSource>(IQueryable<TSource>, IEnumerable<TSource>) depende de la implementación del tipo del source1 parámetro. El comportamiento esperado es que se devuelve la unión establecida de los elementos en source1 y source2 .

Se aplica a

Union<TSource>(IQueryable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>)

Source:
Queryable.cs
Source:
Queryable.cs
Source:
Queryable.cs
Source:
Queryable.cs
Source:
Queryable.cs

Genera la unión de conjunto de dos secuencias mediante un IEqualityComparer<T>especificado.

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)

Parámetros de tipo

TSource

Tipo de los elementos de las secuencias de entrada.

Parámetros

source1
IQueryable<TSource>

Secuencia cuyos elementos distintos forman el primer conjunto para la operación de unión.

source2
IEnumerable<TSource>

Secuencia cuyos elementos distintos forman el segundo conjunto para la operación de unión.

comparer
IEqualityComparer<TSource>

que IEqualityComparer<T> se va a comparar los valores.

Devoluciones

IQueryable<TSource>

que IQueryable<T> contiene los elementos de ambas secuencias de entrada, excepto los duplicados.

Atributos

Excepciones

source1 o source2 es null.

Comentarios

El Union<TSource>(IQueryable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) método genera un MethodCallExpression objeto que representa llamarse Union<TSource>(IQueryable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) a sí mismo como un método genérico construido. A continuación, pasa al MethodCallExpressionCreateQuery<TElement>(Expression) método del IQueryProvider representado por la Provider propiedad del source1 parámetro .

El comportamiento de la consulta que se produce como resultado de ejecutar un árbol de expresión que representa la llamada Union<TSource>(IQueryable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) depende de la implementación del tipo del source1 parámetro. El comportamiento esperado es que se devuelve la unión establecida de los elementos en source1 y source2 . El comparer parámetro se usa para comparar valores.

Se aplica a