Lire en anglais

Partager via


Queryable.Union Méthode

Définition

Produit l'union définie de deux séquences.

Surcharges

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

Produit l'union de deux séquences à l'aide du comparateur d'égalité par défaut.

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

Produit l'union de deux séquences à l'aide d'un IEqualityComparer<T> spécifié.

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

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

Produit l'union de deux séquences à l'aide du comparateur d'égalité par défaut.

C#
public static System.Linq.IQueryable<TSource> Union<TSource> (this System.Linq.IQueryable<TSource> source1, System.Collections.Generic.IEnumerable<TSource> source2);

Paramètres de type

TSource

Type des éléments des séquences d'entrée.

Paramètres

source1
IQueryable<TSource>

Séquence dont les éléments distincts forment le premier jeu pour l'opération d'union.

source2
IEnumerable<TSource>

Séquence dont les éléments distincts forment le second jeu pour l'opération d'union.

Retours

IQueryable<TSource>

IQueryable<T> qui contient les éléments des deux séquences d'entrée, à l'exception des éléments en double.

Exceptions

source1 ou source2 est null.

Exemples

L’exemple de code suivant montre comment utiliser Union<TSource>(IQueryable<TSource>, IEnumerable<TSource>) pour obtenir l’union définie de deux séquences.

C#
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
*/

Remarques

La Union<TSource>(IQueryable<TSource>, IEnumerable<TSource>) méthode génère un MethodCallExpression qui représente l’appel Union<TSource>(IQueryable<TSource>, IEnumerable<TSource>) en tant que méthode générique construite. Il passe ensuite à MethodCallExpression la CreateQuery<TElement>(Expression) méthode du IQueryProvider représenté par la Provider propriété du source1 paramètre .

Le comportement de requête qui se produit à la suite de l’exécution d’une arborescence d’expressions qui représente l’appel Union<TSource>(IQueryable<TSource>, IEnumerable<TSource>) dépend de l’implémentation du type du source1 paramètre. Le comportement attendu est que l’union définie des éléments dans source1 et source2 est retournée.

S’applique à

.NET 9 et autres versions
Produit Versions
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1
UWP 10.0

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

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

Produit l'union de deux séquences à l'aide d'un IEqualityComparer<T> spécifié.

C#
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);
C#
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);

Paramètres de type

TSource

Type des éléments des séquences d'entrée.

Paramètres

source1
IQueryable<TSource>

Séquence dont les éléments distincts forment le premier jeu pour l'opération d'union.

source2
IEnumerable<TSource>

Séquence dont les éléments distincts forment le second jeu pour l'opération d'union.

comparer
IEqualityComparer<TSource>

IEqualityComparer<T> pour comparer les valeurs.

Retours

IQueryable<TSource>

IQueryable<T> qui contient les éléments des deux séquences d'entrée, à l'exception des éléments en double.

Exceptions

source1 ou source2 est null.

Remarques

La Union<TSource>(IQueryable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) méthode génère un MethodCallExpression qui représente l’appel Union<TSource>(IQueryable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) en tant que méthode générique construite. Il passe ensuite à MethodCallExpression la CreateQuery<TElement>(Expression) méthode du IQueryProvider représenté par la Provider propriété du source1 paramètre .

Le comportement de requête qui se produit à la suite de l’exécution d’une arborescence d’expressions qui représente l’appel Union<TSource>(IQueryable<TSource>, IEnumerable<TSource>, IEqualityComparer<TSource>) dépend de l’implémentation du type du source1 paramètre. Le comportement attendu est que l’union définie des éléments dans source1 et source2 est retournée. Le comparer paramètre est utilisé pour comparer les valeurs.

S’applique à

.NET 9 et autres versions
Produit Versions
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1
UWP 10.0