Queryable.Zip Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Overload
Zip<TFirst,TSecond,TResult>(IQueryable<TFirst>, IEnumerable<TSecond>, Expression<Func<TFirst,TSecond,TResult>>) |
Unisce due sequenze tramite la funzione del predicato specificata. |
Zip<TFirst,TSecond,TThird>(IQueryable<TFirst>, IEnumerable<TSecond>, IEnumerable<TThird>) |
Produce una sequenza di tupla con elementi delle tre sequenze specificate. |
Zip<TFirst,TSecond>(IQueryable<TFirst>, IEnumerable<TSecond>) |
Produce una sequenza di tuple con gli elementi dalle due sequenze specificate. |
Zip<TFirst,TSecond,TResult>(IQueryable<TFirst>, IEnumerable<TSecond>, Expression<Func<TFirst,TSecond,TResult>>)
- Origine:
- Queryable.cs
- Origine:
- Queryable.cs
- Origine:
- Queryable.cs
Unisce due sequenze tramite la funzione del predicato specificata.
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)
Parametri di tipo
- TFirst
Tipo degli elementi della prima sequenza di input.
- TSecond
Tipo degli elementi della seconda sequenza di input.
- TResult
Tipo degli elementi della sequenza risultante.
Parametri
- source1
- IQueryable<TFirst>
Prima sequenza da unire.
- source2
- IEnumerable<TSecond>
Seconda sequenza da unire.
- resultSelector
- Expression<Func<TFirst,TSecond,TResult>>
Una funzione che specifica come unire gli elementi dalle due sequenze.
Restituisce
Oggetto IQueryable<T> che contiene gli elementi uniti delle due sequenze di input.
Eccezioni
source1
o source2
è null
.
Esempio
Nell'esempio di codice seguente viene illustrato come usare il Zip metodo per unire due sequenze.
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
Commenti
Il Zip metodo genera un MethodCallExpression oggetto che rappresenta la chiamata Zip stessa come metodo generico costruito. Passa quindi l'oggetto MethodCallExpression al CreateQuery<TElement>(Expression) metodo dell'oggetto IQueryProvider rappresentato dalla Provider proprietà del source1
parametro.
Il metodo unisce ogni elemento della prima sequenza con un elemento con lo stesso indice nella seconda sequenza. Se le sequenze non hanno lo stesso numero di elementi, il metodo unisce le sequenze finché non raggiunge la fine di una di esse. Ad esempio, se una sequenza ha tre elementi e l'altra ha quattro elementi, la sequenza risultante avrà solo tre elementi.
Si applica a
Zip<TFirst,TSecond,TThird>(IQueryable<TFirst>, IEnumerable<TSecond>, IEnumerable<TThird>)
- Origine:
- Queryable.cs
- Origine:
- Queryable.cs
- Origine:
- Queryable.cs
Produce una sequenza di tupla con elementi delle tre sequenze specificate.
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))
Parametri di tipo
- TFirst
Tipo degli elementi della prima sequenza di input.
- TSecond
Tipo degli elementi della seconda sequenza di input.
- TThird
Tipo degli elementi della terza sequenza di input.
Parametri
- source1
- IQueryable<TFirst>
Prima sequenza da unire.
- source2
- IEnumerable<TSecond>
Seconda sequenza da unire.
- source3
- IEnumerable<TThird>
Terza sequenza da unire.
Restituisce
Sequenza di tupla con elementi presi dal primo, secondo e terzo sequenze, in tale ordine.
Si applica a
Zip<TFirst,TSecond>(IQueryable<TFirst>, IEnumerable<TSecond>)
- Origine:
- Queryable.cs
- Origine:
- Queryable.cs
- Origine:
- Queryable.cs
Produce una sequenza di tuple con gli elementi dalle due sequenze specificate.
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))
Parametri di tipo
- TFirst
Tipo degli elementi della prima sequenza di input.
- TSecond
Tipo degli elementi della seconda sequenza di input.
Parametri
- source1
- IQueryable<TFirst>
Prima sequenza da unire.
- source2
- IEnumerable<TSecond>
Seconda sequenza da unire.
Restituisce
Sequenza di tuple con elementi tratti dalla prima e dalla seconda sequenza, in questo ordine.