34 lines
1.3 KiB
Markdown
34 lines
1.3 KiB
Markdown
|
---
|
|||
|
title: To Dictionary
|
|||
|
---
|
|||
|
|
|||
|
# ToDictionary
|
|||
|
|
|||
|
Greates a Dictionary from the DataSet;
|
|||
|
|
|||
|
### Signature
|
|||
|
```csharp
|
|||
|
Enumerable.ToDictionary<TSource, TKey> Method (IEnumerable<TSource>, Func<TSource, TKey>)
|
|||
|
```
|
|||
|
|
|||
|
## Example
|
|||
|
```csharp
|
|||
|
var fruits = new List<Fruit>() {
|
|||
|
new Fruit() { Id = 1, Name = "Orange", Color = "Orange", Quantity: 3 },
|
|||
|
new Fruit() { Id = 2, Name = "Strawberry", Color = "Red", Quantity: 12 },
|
|||
|
new Fruit() { Id = 3, Name = "Grape", Color = "Purple", Quantity: 25 },
|
|||
|
new Fruit() { Id = 4, Name = "Pineapple", Color = "Yellow", Quantity: 1 },
|
|||
|
new Fruit() { Id = 5, Name = "Apple", Color = "Red", Quantity: 5 },
|
|||
|
new Fruit() { Id = 6, Name = "Mango", Color = "Yellow", Quantity: 2 }
|
|||
|
};
|
|||
|
|
|||
|
// Generates a Dictionary of Fruits by Id
|
|||
|
var fruitsById = fruits.ToDictionary(k => k.Id, v => v); // Dictionary<int, Fruit>
|
|||
|
|
|||
|
// Generates a dictionary fruits by color
|
|||
|
var fruitsByColor = fruits.GroupBy(g => g.Color).ToDictionary(k => k.Key, v => v.ToList()); // Dictionary of list of fruits by color
|
|||
|
|
|||
|
// Generates a dictionary of quantity of fruits by color
|
|||
|
var fruitsByColor = fruits.GroupBy(g => g.Color).ToDictionary(k => k.Key, v => v.Sum(s => s.Quantity)); // Dictionary of sum of fruits by color
|
|||
|
```
|