Enumerable.ToDictionary 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.
Crea un oggetto Dictionary<TKey,TValue> da un oggetto IEnumerable<T>.
Overload
ToDictionary<TKey,TValue>(IEnumerable<ValueTuple<TKey,TValue>>, IEqualityComparer<TKey>) |
Crea un dizionario da un'enumerazione in base all'operatore di confronto di uguaglianza delle chiavi specificato. |
ToDictionary<TKey,TValue>(IEnumerable<KeyValuePair<TKey,TValue>>, IEqualityComparer<TKey>) |
Crea un dizionario da un'enumerazione in base all'operatore di confronto delle chiavi specificato. |
ToDictionary<TKey,TValue>(IEnumerable<KeyValuePair<TKey,TValue>>) |
Crea un dizionario da un'enumerazione in base all'operatore di confronto predefinito per il tipo di chiave. |
ToDictionary<TKey,TValue>(IEnumerable<ValueTuple<TKey,TValue>>) |
Crea un dizionario da un'enumerazione in base all'operatore di confronto predefinito per il tipo di chiave. |
ToDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>) |
Crea un oggetto Dictionary<TKey,TValue> da un oggetto IEnumerable<T> secondo le funzioni specificate del selettore principale e del selettore di elementi. |
ToDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>) |
Crea un oggetto Dictionary<TKey,TValue> da un oggetto IEnumerable<T> secondo una funzione specificata del selettore principale, un operatore di confronto principale e una funzione del selettore di elementi. |
ToDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) |
Crea un oggetto Dictionary<TKey,TValue> da un oggetto IEnumerable<T> secondo una funzione del selettore principale specificata. |
ToDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>) |
Crea un oggetto Dictionary<TKey,TValue> da un oggetto IEnumerable<T> secondo una funzione del selettore principale specificata e un operatore di confronto principale. |
ToDictionary<TKey,TValue>(IEnumerable<ValueTuple<TKey,TValue>>, IEqualityComparer<TKey>)
- Origine:
- ToCollection.cs
- Origine:
- ToCollection.cs
Crea un dizionario da un'enumerazione in base all'operatore di confronto di uguaglianza delle chiavi specificato.
public:
generic <typename TKey, typename TValue>
[System::Runtime::CompilerServices::Extension]
static System::Collections::Generic::Dictionary<TKey, TValue> ^ ToDictionary(System::Collections::Generic::IEnumerable<ValueTuple<TKey, TValue>> ^ source, System::Collections::Generic::IEqualityComparer<TKey> ^ comparer);
public static System.Collections.Generic.Dictionary<TKey,TValue> ToDictionary<TKey,TValue> (this System.Collections.Generic.IEnumerable<(TKey Key, TValue Value)> source, System.Collections.Generic.IEqualityComparer<TKey>? comparer);
static member ToDictionary : seq<ValueTuple<'Key, 'Value>> * System.Collections.Generic.IEqualityComparer<'Key> -> System.Collections.Generic.Dictionary<'Key, 'Value>
<Extension()>
Public Function ToDictionary(Of TKey, TValue) (source As IEnumerable(Of ValueTuple(Of TKey, TValue)), comparer As IEqualityComparer(Of TKey)) As Dictionary(Of TKey, TValue)
Parametri di tipo
- TKey
Tipo delle chiavi degli elementi di source
.
- TValue
Tipo dei valori degli elementi di source
.
Parametri
- source
- IEnumerable<ValueTuple<TKey,TValue>>
Enumerazione da cui creare un dizionario.
- comparer
- IEqualityComparer<TKey>
Operatore di confronto di uguaglianza per confrontare le chiavi.
Restituisce
Dizionario che contiene chiavi e valori da source
.
Eccezioni
source
è un riferimento null
.
source
contiene una o più chiavi duplicate.
Commenti
Se comparer
è null
, l'operatore Default di confronto di uguaglianza predefinito viene usato per confrontare le chiavi.
Si applica a
ToDictionary<TKey,TValue>(IEnumerable<KeyValuePair<TKey,TValue>>, IEqualityComparer<TKey>)
- Origine:
- ToCollection.cs
- Origine:
- ToCollection.cs
Crea un dizionario da un'enumerazione in base all'operatore di confronto delle chiavi specificato.
public:
generic <typename TKey, typename TValue>
[System::Runtime::CompilerServices::Extension]
static System::Collections::Generic::Dictionary<TKey, TValue> ^ ToDictionary(System::Collections::Generic::IEnumerable<System::Collections::Generic::KeyValuePair<TKey, TValue>> ^ source, System::Collections::Generic::IEqualityComparer<TKey> ^ comparer);
public static System.Collections.Generic.Dictionary<TKey,TValue> ToDictionary<TKey,TValue> (this System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<TKey,TValue>> source, System.Collections.Generic.IEqualityComparer<TKey>? comparer);
static member ToDictionary : seq<System.Collections.Generic.KeyValuePair<'Key, 'Value>> * System.Collections.Generic.IEqualityComparer<'Key> -> System.Collections.Generic.Dictionary<'Key, 'Value>
<Extension()>
Public Function ToDictionary(Of TKey, TValue) (source As IEnumerable(Of KeyValuePair(Of TKey, TValue)), comparer As IEqualityComparer(Of TKey)) As Dictionary(Of TKey, TValue)
Parametri di tipo
- TKey
Tipo delle chiavi degli elementi di source
.
- TValue
Tipo dei valori degli elementi di source
.
Parametri
- source
- IEnumerable<KeyValuePair<TKey,TValue>>
Enumerazione da cui creare un dizionario.
- comparer
- IEqualityComparer<TKey>
Operatore di confronto di uguaglianza per confrontare le chiavi.
Restituisce
Dizionario che contiene chiavi e valori da source
.
Eccezioni
source
è un riferimento null
.
source
contiene una o più chiavi duplicate.
Commenti
Se comparer
è null
, l'operatore Default di confronto di uguaglianza predefinito viene usato per confrontare le chiavi.
Si applica a
ToDictionary<TKey,TValue>(IEnumerable<KeyValuePair<TKey,TValue>>)
- Origine:
- ToCollection.cs
- Origine:
- ToCollection.cs
Crea un dizionario da un'enumerazione in base all'operatore di confronto predefinito per il tipo di chiave.
public:
generic <typename TKey, typename TValue>
[System::Runtime::CompilerServices::Extension]
static System::Collections::Generic::Dictionary<TKey, TValue> ^ ToDictionary(System::Collections::Generic::IEnumerable<System::Collections::Generic::KeyValuePair<TKey, TValue>> ^ source);
public static System.Collections.Generic.Dictionary<TKey,TValue> ToDictionary<TKey,TValue> (this System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<TKey,TValue>> source);
static member ToDictionary : seq<System.Collections.Generic.KeyValuePair<'Key, 'Value>> -> System.Collections.Generic.Dictionary<'Key, 'Value>
<Extension()>
Public Function ToDictionary(Of TKey, TValue) (source As IEnumerable(Of KeyValuePair(Of TKey, TValue))) As Dictionary(Of TKey, TValue)
Parametri di tipo
- TKey
Tipo delle chiavi degli elementi di source
.
- TValue
Tipo dei valori degli elementi di source
.
Parametri
- source
- IEnumerable<KeyValuePair<TKey,TValue>>
Enumerazione da cui creare un dizionario.
Restituisce
Dizionario che contiene chiavi e valori da source
e usa l'operatore di confronto predefinito per il tipo di chiave.
Eccezioni
source
è un riferimento null
.
source
contiene una o più chiavi duplicate.
Si applica a
ToDictionary<TKey,TValue>(IEnumerable<ValueTuple<TKey,TValue>>)
- Origine:
- ToCollection.cs
- Origine:
- ToCollection.cs
Crea un dizionario da un'enumerazione in base all'operatore di confronto predefinito per il tipo di chiave.
public:
generic <typename TKey, typename TValue>
[System::Runtime::CompilerServices::Extension]
static System::Collections::Generic::Dictionary<TKey, TValue> ^ ToDictionary(System::Collections::Generic::IEnumerable<ValueTuple<TKey, TValue>> ^ source);
public static System.Collections.Generic.Dictionary<TKey,TValue> ToDictionary<TKey,TValue> (this System.Collections.Generic.IEnumerable<(TKey Key, TValue Value)> source);
static member ToDictionary : seq<ValueTuple<'Key, 'Value>> -> System.Collections.Generic.Dictionary<'Key, 'Value>
<Extension()>
Public Function ToDictionary(Of TKey, TValue) (source As IEnumerable(Of ValueTuple(Of TKey, TValue))) As Dictionary(Of TKey, TValue)
Parametri di tipo
- TKey
Tipo delle chiavi degli elementi di source
.
- TValue
Tipo dei valori degli elementi di source
.
Parametri
- source
- IEnumerable<ValueTuple<TKey,TValue>>
Enumerazione da cui creare un dizionario.
Restituisce
Dizionario che contiene chiavi e valori da source
e usa l'operatore di confronto predefinito per il tipo di chiave.
Eccezioni
source
è un riferimento null
.
source
contiene una o più chiavi duplicate.
Si applica a
ToDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>)
- Origine:
- ToCollection.cs
- Origine:
- ToCollection.cs
- Origine:
- ToCollection.cs
Crea un oggetto Dictionary<TKey,TValue> da un oggetto IEnumerable<T> secondo le funzioni specificate del selettore principale e del selettore di elementi.
public:
generic <typename TSource, typename TKey, typename TElement>
[System::Runtime::CompilerServices::Extension]
static System::Collections::Generic::Dictionary<TKey, TElement> ^ ToDictionary(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, TKey> ^ keySelector, Func<TSource, TElement> ^ elementSelector);
public static System.Collections.Generic.Dictionary<TKey,TElement> ToDictionary<TSource,TKey,TElement> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,TKey> keySelector, Func<TSource,TElement> elementSelector);
static member ToDictionary : seq<'Source> * Func<'Source, 'Key> * Func<'Source, 'Element> -> System.Collections.Generic.Dictionary<'Key, 'Element>
<Extension()>
Public Function ToDictionary(Of TSource, TKey, TElement) (source As IEnumerable(Of TSource), keySelector As Func(Of TSource, TKey), elementSelector As Func(Of TSource, TElement)) As Dictionary(Of TKey, TElement)
Parametri di tipo
- TSource
Tipo degli elementi di source
.
- TKey
Tipo della chiave restituita dall'oggetto keySelector
.
- TElement
Tipo del valore restituito dall'oggetto elementSelector
.
Parametri
- source
- IEnumerable<TSource>
Oggetto IEnumerable<T> da cui creare un oggetto Dictionary<TKey,TValue>.
- keySelector
- Func<TSource,TKey>
Funzione per estrarre una chiave da ogni elemento.
- elementSelector
- Func<TSource,TElement>
Funzione di trasformazione per produrre un valore dell'elemento di risultato da ogni elemento.
Restituisce
Oggetto Dictionary<TKey,TValue> che contiene valori di tipo TElement
selezionati dalla sequenza di input.
Eccezioni
Il parametro source
, il parametro keySelector
o il parametro elementSelector
è null
.
-oppure-
keySelector
genera una chiave che è null
.
keySelector
genera chiavi duplicate per due elementi.
Commenti
Il ToDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>) metodo usa l'operatore Default di confronto di uguaglianza predefinito per confrontare le chiavi.
Si applica a
ToDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>)
- Origine:
- ToCollection.cs
- Origine:
- ToCollection.cs
- Origine:
- ToCollection.cs
Crea un oggetto Dictionary<TKey,TValue> da un oggetto IEnumerable<T> secondo una funzione specificata del selettore principale, un operatore di confronto principale e una funzione del selettore di elementi.
public:
generic <typename TSource, typename TKey, typename TElement>
[System::Runtime::CompilerServices::Extension]
static System::Collections::Generic::Dictionary<TKey, TElement> ^ ToDictionary(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, TKey> ^ keySelector, Func<TSource, TElement> ^ elementSelector, System::Collections::Generic::IEqualityComparer<TKey> ^ comparer);
public static System.Collections.Generic.Dictionary<TKey,TElement> ToDictionary<TSource,TKey,TElement> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,TKey> keySelector, Func<TSource,TElement> elementSelector, System.Collections.Generic.IEqualityComparer<TKey> comparer);
public static System.Collections.Generic.Dictionary<TKey,TElement> ToDictionary<TSource,TKey,TElement> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,TKey> keySelector, Func<TSource,TElement> elementSelector, System.Collections.Generic.IEqualityComparer<TKey>? comparer);
static member ToDictionary : seq<'Source> * Func<'Source, 'Key> * Func<'Source, 'Element> * System.Collections.Generic.IEqualityComparer<'Key> -> System.Collections.Generic.Dictionary<'Key, 'Element>
<Extension()>
Public Function ToDictionary(Of TSource, TKey, TElement) (source As IEnumerable(Of TSource), keySelector As Func(Of TSource, TKey), elementSelector As Func(Of TSource, TElement), comparer As IEqualityComparer(Of TKey)) As Dictionary(Of TKey, TElement)
Parametri di tipo
- TSource
Tipo degli elementi di source
.
- TKey
Tipo della chiave restituita dall'oggetto keySelector
.
- TElement
Tipo del valore restituito dall'oggetto elementSelector
.
Parametri
- source
- IEnumerable<TSource>
Oggetto IEnumerable<T> da cui creare un oggetto Dictionary<TKey,TValue>.
- keySelector
- Func<TSource,TKey>
Funzione per estrarre una chiave da ogni elemento.
- elementSelector
- Func<TSource,TElement>
Funzione di trasformazione per produrre un valore dell'elemento di risultato da ogni elemento.
- comparer
- IEqualityComparer<TKey>
Oggetto IEqualityComparer<T> per confrontare le chiavi.
Restituisce
Oggetto Dictionary<TKey,TValue> che contiene valori di tipo TElement
selezionati dalla sequenza di input.
Eccezioni
Il parametro source
, il parametro keySelector
o il parametro elementSelector
è null
.
-oppure-
keySelector
genera una chiave che è null
.
keySelector
genera chiavi duplicate per due elementi.
Commenti
Se comparer
è null
, l'operatore Default di confronto di uguaglianza predefinito viene usato per confrontare le chiavi.
Si applica a
ToDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)
- Origine:
- ToCollection.cs
- Origine:
- ToCollection.cs
- Origine:
- ToCollection.cs
Crea un oggetto Dictionary<TKey,TValue> da un oggetto IEnumerable<T> secondo una funzione del selettore principale specificata.
public:
generic <typename TSource, typename TKey>
[System::Runtime::CompilerServices::Extension]
static System::Collections::Generic::Dictionary<TKey, TSource> ^ ToDictionary(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, TKey> ^ keySelector);
public static System.Collections.Generic.Dictionary<TKey,TSource> ToDictionary<TSource,TKey> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,TKey> keySelector);
static member ToDictionary : seq<'Source> * Func<'Source, 'Key> -> System.Collections.Generic.Dictionary<'Key, 'Source>
<Extension()>
Public Function ToDictionary(Of TSource, TKey) (source As IEnumerable(Of TSource), keySelector As Func(Of TSource, TKey)) As Dictionary(Of TKey, TSource)
Parametri di tipo
- TSource
Tipo degli elementi di source
.
- TKey
Tipo della chiave restituita dall'oggetto keySelector
.
Parametri
- source
- IEnumerable<TSource>
Oggetto IEnumerable<T> da cui creare un oggetto Dictionary<TKey,TValue>.
- keySelector
- Func<TSource,TKey>
Funzione per estrarre una chiave da ogni elemento.
Restituisce
Oggetto Dictionary<TKey,TValue> che contiene chiavi e valori. I valori all'interno di ogni gruppo sono nello stesso ordine di source
.
Eccezioni
source
o keySelector
è null
.
-oppure-
keySelector
genera una chiave che è null
.
keySelector
genera chiavi duplicate per due elementi.
Esempio
Nell'esempio di codice seguente viene illustrato come usare ToDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) per creare un Dictionary<TKey,TValue> oggetto usando un selettore di chiave.
class Package
{
public string Company { get; set; }
public double Weight { get; set; }
public long TrackingNumber { get; set; }
}
public static void ToDictionaryEx1()
{
List<Package> packages =
new List<Package>
{ new Package { Company = "Coho Vineyard", Weight = 25.2, TrackingNumber = 89453312L },
new Package { Company = "Lucerne Publishing", Weight = 18.7, TrackingNumber = 89112755L },
new Package { Company = "Wingtip Toys", Weight = 6.0, TrackingNumber = 299456122L },
new Package { Company = "Adventure Works", Weight = 33.8, TrackingNumber = 4665518773L } };
// Create a Dictionary of Package objects,
// using TrackingNumber as the key.
Dictionary<long, Package> dictionary =
packages.ToDictionary(p => p.TrackingNumber);
foreach (KeyValuePair<long, Package> kvp in dictionary)
{
Console.WriteLine(
"Key {0}: {1}, {2} pounds",
kvp.Key,
kvp.Value.Company,
kvp.Value.Weight);
}
}
/*
This code produces the following output:
Key 89453312: Coho Vineyard, 25.2 pounds
Key 89112755: Lucerne Publishing, 18.7 pounds
Key 299456122: Wingtip Toys, 6 pounds
Key 4665518773: Adventure Works, 33.8 pounds
*/
Structure Package
Public Company As String
Public Weight As Double
Public TrackingNumber As Long
End Structure
Sub ToDictionaryEx1()
' Create a list of Package values.
Dim packages As New List(Of Package)(New Package() _
{New Package With
{.Company = "Coho Vineyard", .Weight = 25.2, .TrackingNumber = 89453312L},
New Package With
{.Company = "Lucerne Publishing", .Weight = 18.7, .TrackingNumber = 89112755L},
New Package With
{.Company = "Wingtip Toys", .Weight = 6.0, .TrackingNumber = 299456122L},
New Package With
{.Company = "Adventure Works", .Weight = 33.8, .TrackingNumber = 4665518773L}})
' Create a Dictionary that contains Package values,
' using TrackingNumber as the key.
Dim dict As Dictionary(Of Long, Package) =
packages.ToDictionary(Function(p) p.TrackingNumber)
' Display the results.
Dim output As New System.Text.StringBuilder
For Each kvp As KeyValuePair(Of Long, Package) In dict
output.AppendLine("Key " & kvp.Key & ": " &
kvp.Value.Company & ", " &
kvp.Value.Weight & " pounds")
Next
Console.WriteLine(output.ToString())
End Sub
' This code produces the following output:
'
' Key 89453312: Coho Vineyard, 25.2 pounds
' Key 89112755: Lucerne Publishing, 18.7 pounds
' Key 299456122: Wingtip Toys, 6 pounds
' Key 4665518773: Adventure Works, 33.8 pounds
Commenti
Il ToDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) metodo usa l'operatore Default di confronto di uguaglianza predefinito per confrontare le chiavi.
Si applica a
ToDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)
- Origine:
- ToCollection.cs
- Origine:
- ToCollection.cs
- Origine:
- ToCollection.cs
Crea un oggetto Dictionary<TKey,TValue> da un oggetto IEnumerable<T> secondo una funzione del selettore principale specificata e un operatore di confronto principale.
public:
generic <typename TSource, typename TKey>
[System::Runtime::CompilerServices::Extension]
static System::Collections::Generic::Dictionary<TKey, TSource> ^ ToDictionary(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, TKey> ^ keySelector, System::Collections::Generic::IEqualityComparer<TKey> ^ comparer);
public static System.Collections.Generic.Dictionary<TKey,TSource> ToDictionary<TSource,TKey> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,TKey> keySelector, System.Collections.Generic.IEqualityComparer<TKey> comparer);
public static System.Collections.Generic.Dictionary<TKey,TSource> ToDictionary<TSource,TKey> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,TKey> keySelector, System.Collections.Generic.IEqualityComparer<TKey>? comparer);
static member ToDictionary : seq<'Source> * Func<'Source, 'Key> * System.Collections.Generic.IEqualityComparer<'Key> -> System.Collections.Generic.Dictionary<'Key, 'Source>
<Extension()>
Public Function ToDictionary(Of TSource, TKey) (source As IEnumerable(Of TSource), keySelector As Func(Of TSource, TKey), comparer As IEqualityComparer(Of TKey)) As Dictionary(Of TKey, TSource)
Parametri di tipo
- TSource
Tipo degli elementi di source
.
- TKey
Tipo delle chiavi restituite dall'oggetto keySelector
.
Parametri
- source
- IEnumerable<TSource>
Oggetto IEnumerable<T> da cui creare un oggetto Dictionary<TKey,TValue>.
- keySelector
- Func<TSource,TKey>
Funzione per estrarre una chiave da ogni elemento.
- comparer
- IEqualityComparer<TKey>
Oggetto IEqualityComparer<T> per confrontare le chiavi.
Restituisce
Oggetto Dictionary<TKey,TValue> che contiene chiavi e valori. I valori all'interno di ogni gruppo sono nello stesso ordine di source
.
Eccezioni
source
o keySelector
è null
.
-oppure-
keySelector
genera una chiave che è null
.
keySelector
genera chiavi duplicate per due elementi.
Commenti
Se comparer
è null
, l'operatore Default di confronto di uguaglianza predefinito viene usato per confrontare le chiavi.