Enumerable.ToDictionary Yöntem

Tanım

bir 'den bir Dictionary<TKey,TValue>IEnumerable<T>oluşturur.

Aşırı Yüklemeler

ToDictionary<TKey,TValue>(IEnumerable<ValueTuple<TKey,TValue>>, IEqualityComparer<TKey>)

Belirtilen anahtar eşitliği karşılaştırıcısına göre bir numaralandırmadan sözlük oluşturur.

ToDictionary<TKey,TValue>(IEnumerable<KeyValuePair<TKey,TValue>>, IEqualityComparer<TKey>)

Belirtilen anahtar karşılaştırıcısına göre bir numaralandırmadan sözlük oluşturur.

ToDictionary<TKey,TValue>(IEnumerable<KeyValuePair<TKey,TValue>>)

Anahtar türü için varsayılan karşılaştırıcıya göre bir numaralandırmadan sözlük oluşturur.

ToDictionary<TKey,TValue>(IEnumerable<ValueTuple<TKey,TValue>>)

Anahtar türü için varsayılan karşılaştırıcıya göre bir numaralandırmadan sözlük oluşturur.

ToDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>)

Belirtilen anahtar seçici ve öğe seçici işlevlerine göre öğesinden bir Dictionary<TKey,TValue>IEnumerable<T> oluşturur.

ToDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>)

Dictionary<TKey,TValue> Belirtilen anahtar seçici işlevine, karşılaştırıcıya ve öğe seçici işlevine göre öğesinden IEnumerable<T> bir oluşturur.

ToDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

Dictionary<TKey,TValue> Belirtilen anahtar seçici işlevine göre bir'den IEnumerable<T> bir oluşturur.

ToDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)

Dictionary<TKey,TValue> Belirtilen bir anahtar seçici işlevine ve anahtar karşılaştırıcısına göre'den IEnumerable<T> bir oluşturur.

ToDictionary<TKey,TValue>(IEnumerable<ValueTuple<TKey,TValue>>, IEqualityComparer<TKey>)

Kaynak:
ToCollection.cs
Kaynak:
ToCollection.cs

Belirtilen anahtar eşitliği karşılaştırıcısına göre bir numaralandırmadan sözlük oluşturur.

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

Tür Parametreleri

TKey

öğesinden anahtarların sourcetürü.

TValue

öğesinden değerlerin sourcetürü.

Parametreler

source
IEnumerable<ValueTuple<TKey,TValue>>

Sözlüğün oluşturulacağı numaralandırma.

comparer
IEqualityComparer<TKey>

Anahtarları karşılaştırmak için bir eşitlik karşılaştırıcısı.

Döndürülenler

anahtarlarını ve değerlerini sourceiçeren bir sözlük.

Özel durumlar

source bir null başvurudur.

source bir veya daha fazla yinelenen anahtar içerir.

Açıklamalar

ise comparernull, anahtarları karşılaştırmak için varsayılan eşitlik karşılaştırıcısı Default kullanılır.

Şunlara uygulanır

.NET 9 ve .NET 8
Ürün Sürümler
.NET 8, 9

ToDictionary<TKey,TValue>(IEnumerable<KeyValuePair<TKey,TValue>>, IEqualityComparer<TKey>)

Kaynak:
ToCollection.cs
Kaynak:
ToCollection.cs

Belirtilen anahtar karşılaştırıcısına göre bir numaralandırmadan sözlük oluşturur.

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

Tür Parametreleri

TKey

öğesinden anahtarların sourcetürü.

TValue

öğesinden değerlerin sourcetürü.

Parametreler

source
IEnumerable<KeyValuePair<TKey,TValue>>

Sözlüğün oluşturulacağı numaralandırma.

comparer
IEqualityComparer<TKey>

Anahtarları karşılaştırmak için bir eşitlik karşılaştırıcısı.

Döndürülenler

anahtarlarını ve değerlerini sourceiçeren bir sözlük.

Özel durumlar

source bir null başvurudur.

source bir veya daha fazla yinelenen anahtar içerir.

Açıklamalar

ise comparernull, anahtarları karşılaştırmak için varsayılan eşitlik karşılaştırıcısı Default kullanılır.

Şunlara uygulanır

.NET 9 ve .NET 8
Ürün Sürümler
.NET 8, 9

ToDictionary<TKey,TValue>(IEnumerable<KeyValuePair<TKey,TValue>>)

Kaynak:
ToCollection.cs
Kaynak:
ToCollection.cs

Anahtar türü için varsayılan karşılaştırıcıya göre bir numaralandırmadan sözlük oluşturur.

C#
public static System.Collections.Generic.Dictionary<TKey,TValue> ToDictionary<TKey,TValue> (this System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<TKey,TValue>> source);

Tür Parametreleri

TKey

öğesinden anahtarların sourcetürü.

TValue

öğesinden değerlerin sourcetürü.

Parametreler

source
IEnumerable<KeyValuePair<TKey,TValue>>

Sözlüğün oluşturulacağı numaralandırma.

Döndürülenler

anahtar ve değerlerini source içeren ve anahtar türü için varsayılan karşılaştırıcıyı kullanan bir sözlük.

Özel durumlar

source bir null başvurudur.

source bir veya daha fazla yinelenen anahtar içerir.

Şunlara uygulanır

.NET 9 ve .NET 8
Ürün Sürümler
.NET 8, 9

ToDictionary<TKey,TValue>(IEnumerable<ValueTuple<TKey,TValue>>)

Kaynak:
ToCollection.cs
Kaynak:
ToCollection.cs

Anahtar türü için varsayılan karşılaştırıcıya göre bir numaralandırmadan sözlük oluşturur.

C#
public static System.Collections.Generic.Dictionary<TKey,TValue> ToDictionary<TKey,TValue> (this System.Collections.Generic.IEnumerable<(TKey Key, TValue Value)> source);

Tür Parametreleri

TKey

öğesinden anahtarların sourcetürü.

TValue

öğesinden değerlerin sourcetürü.

Parametreler

source
IEnumerable<ValueTuple<TKey,TValue>>

Sözlüğün oluşturulacağı numaralandırma.

Döndürülenler

anahtar ve değerlerini source içeren ve anahtar türü için varsayılan karşılaştırıcıyı kullanan bir sözlük.

Özel durumlar

source bir null başvurudur.

source bir veya daha fazla yinelenen anahtar içerir.

Şunlara uygulanır

.NET 9 ve .NET 8
Ürün Sürümler
.NET 8, 9

ToDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>)

Kaynak:
ToCollection.cs
Kaynak:
ToCollection.cs
Kaynak:
ToCollection.cs

Belirtilen anahtar seçici ve öğe seçici işlevlerine göre öğesinden bir Dictionary<TKey,TValue>IEnumerable<T> oluşturur.

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

Tür Parametreleri

TSource

öğelerinin sourcetürü.

TKey

tarafından keySelectordöndürülen anahtarın türü.

TElement

tarafından elementSelectordöndürülen değerin türü.

Parametreler

source
IEnumerable<TSource>

Oluşturulacak IEnumerable<T>Dictionary<TKey,TValue> kaynak.

keySelector
Func<TSource,TKey>

Her öğeden anahtar ayıklamak için bir işlev.

elementSelector
Func<TSource,TElement>

Her öğeden bir sonuç öğesi değeri üretmek için bir transform işlevi.

Döndürülenler

Dictionary<TKey,TElement>

Dictionary<TKey,TValue> Giriş dizisinden seçilen tür TElement değerlerini içeren bir.

Özel durumlar

source veya keySelector veya elementSelector şeklindedir null.

-veya-

keySelector , olan nullbir anahtar üretir.

keySelector iki öğe için yinelenen anahtarlar üretir.

Açıklamalar

yöntemi, ToDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>) anahtarları karşılaştırmak için varsayılan eşitlik karşılaştırıcısını Default kullanır.

Şunlara uygulanır

.NET 9 ve diğer sürümler
Ürün Sürümler
.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 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

ToDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>)

Kaynak:
ToCollection.cs
Kaynak:
ToCollection.cs
Kaynak:
ToCollection.cs

Dictionary<TKey,TValue> Belirtilen anahtar seçici işlevine, karşılaştırıcıya ve öğe seçici işlevine göre öğesinden IEnumerable<T> bir oluşturur.

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

Tür Parametreleri

TSource

öğelerinin sourcetürü.

TKey

tarafından keySelectordöndürülen anahtarın türü.

TElement

tarafından elementSelectordöndürülen değerin türü.

Parametreler

source
IEnumerable<TSource>

Oluşturulacak IEnumerable<T>Dictionary<TKey,TValue> kaynak.

keySelector
Func<TSource,TKey>

Her öğeden anahtar ayıklamak için bir işlev.

elementSelector
Func<TSource,TElement>

Her öğeden bir sonuç öğesi değeri üretmek için bir transform işlevi.

comparer
IEqualityComparer<TKey>

Anahtarları karşılaştırmak için bir IEqualityComparer<T> .

Döndürülenler

Dictionary<TKey,TElement>

Dictionary<TKey,TValue> Giriş dizisinden seçilen tür TElement değerlerini içeren bir.

Özel durumlar

source veya keySelector veya elementSelector şeklindedir null.

-veya-

keySelector , olan nullbir anahtar üretir.

keySelector iki öğe için yinelenen anahtarlar üretir.

Açıklamalar

ise comparernull, anahtarları karşılaştırmak için varsayılan eşitlik karşılaştırıcısı Default kullanılır.

Şunlara uygulanır

.NET 9 ve diğer sürümler
Ürün Sürümler
.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 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

ToDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

Kaynak:
ToCollection.cs
Kaynak:
ToCollection.cs
Kaynak:
ToCollection.cs

Dictionary<TKey,TValue> Belirtilen anahtar seçici işlevine göre bir'den IEnumerable<T> bir oluşturur.

C#
public static System.Collections.Generic.Dictionary<TKey,TSource> ToDictionary<TSource,TKey> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,TKey> keySelector);

Tür Parametreleri

TSource

öğelerinin sourcetürü.

TKey

tarafından keySelectordöndürülen anahtarın türü.

Parametreler

source
IEnumerable<TSource>

Oluşturulacak IEnumerable<T>Dictionary<TKey,TValue> kaynak.

keySelector
Func<TSource,TKey>

Her öğeden anahtar ayıklamak için bir işlev.

Döndürülenler

Dictionary<TKey,TSource>

Dictionary<TKey,TValue> Anahtarlar ve değerler içeren bir. Her grup içindeki değerler, içindekiyle sourceaynı sıradadır.

Özel durumlar

source veya keySelector şeklindedir null.

-veya-

keySelector , olan nullbir anahtar üretir.

keySelector iki öğe için yinelenen anahtarlar üretir.

Örnekler

Aşağıdaki kod örneği, anahtar seçici kullanarak oluşturma Dictionary<TKey,TValue> işleminin nasıl kullanılacağını ToDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) gösterir.

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

Açıklamalar

yöntemi, ToDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>) anahtarları karşılaştırmak için varsayılan eşitlik karşılaştırıcısını Default kullanır.

Şunlara uygulanır

.NET 9 ve diğer sürümler
Ürün Sürümler
.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 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

ToDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)

Kaynak:
ToCollection.cs
Kaynak:
ToCollection.cs
Kaynak:
ToCollection.cs

Dictionary<TKey,TValue> Belirtilen bir anahtar seçici işlevine ve anahtar karşılaştırıcısına göre'den IEnumerable<T> bir oluşturur.

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

Tür Parametreleri

TSource

öğelerinin sourcetürü.

TKey

tarafından keySelectordöndürülen anahtarların türü.

Parametreler

source
IEnumerable<TSource>

Oluşturulacak IEnumerable<T>Dictionary<TKey,TValue> kaynak.

keySelector
Func<TSource,TKey>

Her öğeden anahtar ayıklamak için bir işlev.

comparer
IEqualityComparer<TKey>

Anahtarları karşılaştırmak için bir IEqualityComparer<T> .

Döndürülenler

Dictionary<TKey,TSource>

Dictionary<TKey,TValue> Anahtarlar ve değerler içeren bir. Her grup içindeki değerler, içindekiyle sourceaynı sıradadır.

Özel durumlar

source veya keySelector şeklindedir null.

-veya-

keySelector , olan nullbir anahtar üretir.

keySelector iki öğe için yinelenen anahtarlar üretir.

Açıklamalar

ise comparernull, anahtarları karşılaştırmak için varsayılan eşitlik karşılaştırıcısı Default kullanılır.

Şunlara uygulanır

.NET 9 ve diğer sürümler
Ürün Sürümler
.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 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0