Concatenate two IEnumerable sequences in C# .NET
August 4, 2017 2 Comments
We can use the Range method to build two integer sequences as follows:
IEnumerable<int> firstRange = Enumerable.Range(10, 10); IEnumerable<int> secondRange = Enumerable.Range(5, 20);
You can join the two sequences using the Concat method:
List<int> concatenated = firstRange.Concat(secondRange).ToList(); concatenated.ForEach(i => Debug.WriteLine(i));
You’ll see that the concatenated sequence holds all numbers from the first and the second sequence:
10
11
12
13
14
15
16
17
18
19
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
If that’s not what you want then you can filter out the duplicates using the Union extension method:
List<int> concatenated = firstRange.Union(secondRange).ToList(); concatenated.ForEach(i => Debug.WriteLine(i));
…and here come all unique values:
10
11
12
13
14
15
16
17
18
19
5
6
7
8
9
20
21
22
23
24
View the list of posts on LINQ here.
Useful tip..thanks
Pingback: Concatenate two IEnumerable sequences in C# .NET | | Elliot Balynn's Blog