Queryable.Zip Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Surcharges
Zip<TFirst,TSecond,TResult>(IQueryable<TFirst>, IEnumerable<TSecond>, Expression<Func<TFirst,TSecond,TResult>>) |
Fusionne deux séquences en utilisant la fonction de prédicat spécifiée. |
Zip<TFirst,TSecond,TThird>(IQueryable<TFirst>, IEnumerable<TSecond>, IEnumerable<TThird>) |
Produit une séquence de tuples avec des éléments des trois séquences spécifiées. |
Zip<TFirst,TSecond>(IQueryable<TFirst>, IEnumerable<TSecond>) |
Produit une séquence de tuples avec des éléments des deux séquences spécifiées. |
Zip<TFirst,TSecond,TResult>(IQueryable<TFirst>, IEnumerable<TSecond>, Expression<Func<TFirst,TSecond,TResult>>)
- Source:
- Queryable.cs
- Source:
- Queryable.cs
- Source:
- Queryable.cs
Fusionne deux séquences en utilisant la fonction de prédicat spécifiée.
public:
generic <typename TFirst, typename TSecond, typename TResult>
[System::Runtime::CompilerServices::Extension]
static System::Linq::IQueryable<TResult> ^ Zip(System::Linq::IQueryable<TFirst> ^ source1, System::Collections::Generic::IEnumerable<TSecond> ^ source2, System::Linq::Expressions::Expression<Func<TFirst, TSecond, TResult> ^> ^ resultSelector);
public static System.Linq.IQueryable<TResult> Zip<TFirst,TSecond,TResult> (this System.Linq.IQueryable<TFirst> source1, System.Collections.Generic.IEnumerable<TSecond> source2, System.Linq.Expressions.Expression<Func<TFirst,TSecond,TResult>> resultSelector);
static member Zip : System.Linq.IQueryable<'First> * seq<'Second> * System.Linq.Expressions.Expression<Func<'First, 'Second, 'Result>> -> System.Linq.IQueryable<'Result>
<Extension()>
Public Function Zip(Of TFirst, TSecond, TResult) (source1 As IQueryable(Of TFirst), source2 As IEnumerable(Of TSecond), resultSelector As Expression(Of Func(Of TFirst, TSecond, TResult))) As IQueryable(Of TResult)
Paramètres de type
- TFirst
Type des éléments de la première séquence d'entrée.
- TSecond
Type des éléments de la seconde séquence d'entrée.
- TResult
Type des éléments de la séquence résultante.
Paramètres
- source1
- IQueryable<TFirst>
Première séquence à fusionner.
- source2
- IEnumerable<TSecond>
Seconde séquence à fusionner.
- resultSelector
- Expression<Func<TFirst,TSecond,TResult>>
Fonction qui spécifie comment fusionner les éléments des deux séquences.
Retours
IQueryable<T> qui contient les éléments fusionnés des deux séquences d'entrée.
Exceptions
source1
ou source2
est null
.
Exemples
L’exemple de code suivant montre comment utiliser la Zip méthode pour fusionner deux séquences.
int[] numbers = { 1, 2, 3, 4 };
string[] words = { "one", "two", "three" };
var numbersAndWords = numbers.AsQueryable().Zip(words, (first, second) => first + " " + second);
foreach (var item in numbersAndWords)
Console.WriteLine(item);
// This code produces the following output:
// 1 one
// 2 two
// 3 three
Dim numbers() As Integer = {1, 2, 3, 4}
Dim words() As String = {"one", "two", "three"}
Dim numbersAndWords = numbers.AsQueryable().Zip(words, Function(first, second) first & " " & second)
For Each item In numbersAndWords
Console.WriteLine(item)
Next
' This code produces the following output:
' 1 one
' 2 two
' 3 three
Remarques
La Zip méthode génère un MethodCallExpression qui représente l’appel Zip 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 .
La méthode fusionne chaque élément de la première séquence avec un élément qui a le même index dans la deuxième séquence. Si les séquences n’ont pas le même nombre d’éléments, la méthode fusionne les séquences jusqu’à la fin de l’un d’entre eux. Par exemple, si une séquence a trois éléments et l’autre en a quatre, la séquence résultante n’aura que trois éléments.
S’applique à
Zip<TFirst,TSecond,TThird>(IQueryable<TFirst>, IEnumerable<TSecond>, IEnumerable<TThird>)
- Source:
- Queryable.cs
- Source:
- Queryable.cs
- Source:
- Queryable.cs
Produit une séquence de tuples avec des éléments des trois séquences spécifiées.
public:
generic <typename TFirst, typename TSecond, typename TThird>
[System::Runtime::CompilerServices::Extension]
static System::Linq::IQueryable<ValueTuple<TFirst, TSecond, TThird>> ^ Zip(System::Linq::IQueryable<TFirst> ^ source1, System::Collections::Generic::IEnumerable<TSecond> ^ source2, System::Collections::Generic::IEnumerable<TThird> ^ source3);
public static System.Linq.IQueryable<(TFirst First, TSecond Second, TThird Third)> Zip<TFirst,TSecond,TThird> (this System.Linq.IQueryable<TFirst> source1, System.Collections.Generic.IEnumerable<TSecond> source2, System.Collections.Generic.IEnumerable<TThird> source3);
static member Zip : System.Linq.IQueryable<'First> * seq<'Second> * seq<'hird> -> System.Linq.IQueryable<ValueTuple<'First, 'Second, 'hird>>
<Extension()>
Public Function Zip(Of TFirst, TSecond, TThird) (source1 As IQueryable(Of TFirst), source2 As IEnumerable(Of TSecond), source3 As IEnumerable(Of TThird)) As IQueryable(Of ValueTuple(Of TFirst, TSecond, TThird))
Paramètres de type
- TFirst
Type des éléments de la première séquence d'entrée.
- TSecond
Type des éléments de la seconde séquence d'entrée.
- TThird
Type des éléments de la troisième séquence d’entrée.
Paramètres
- source1
- IQueryable<TFirst>
Première séquence à fusionner.
- source2
- IEnumerable<TSecond>
Seconde séquence à fusionner.
- source3
- IEnumerable<TThird>
Troisième séquence à fusionner.
Retours
Séquence de tuples avec des éléments extraits des première, deuxième et troisième séquences, dans cet ordre.
S’applique à
Zip<TFirst,TSecond>(IQueryable<TFirst>, IEnumerable<TSecond>)
- Source:
- Queryable.cs
- Source:
- Queryable.cs
- Source:
- Queryable.cs
Produit une séquence de tuples avec des éléments des deux séquences spécifiées.
public:
generic <typename TFirst, typename TSecond>
[System::Runtime::CompilerServices::Extension]
static System::Linq::IQueryable<ValueTuple<TFirst, TSecond>> ^ Zip(System::Linq::IQueryable<TFirst> ^ source1, System::Collections::Generic::IEnumerable<TSecond> ^ source2);
public static System.Linq.IQueryable<(TFirst First, TSecond Second)> Zip<TFirst,TSecond> (this System.Linq.IQueryable<TFirst> source1, System.Collections.Generic.IEnumerable<TSecond> source2);
static member Zip : System.Linq.IQueryable<'First> * seq<'Second> -> System.Linq.IQueryable<ValueTuple<'First, 'Second>>
<Extension()>
Public Function Zip(Of TFirst, TSecond) (source1 As IQueryable(Of TFirst), source2 As IEnumerable(Of TSecond)) As IQueryable(Of ValueTuple(Of TFirst, TSecond))
Paramètres de type
- TFirst
Type des éléments de la première séquence d'entrée.
- TSecond
Type des éléments de la seconde séquence d'entrée.
Paramètres
- source1
- IQueryable<TFirst>
Première séquence à fusionner.
- source2
- IEnumerable<TSecond>
Seconde séquence à fusionner.
Retours
Séquence de tuples avec des éléments extraits des première et deuxième séquences, dans cet ordre.