GroupBy - Simple 1

Query
public void Linq40()
{
int[] numbers = { 5, 4, 1, 3, 9, 8, 6, 7, 2, 0 };

var numberGroups =
from n in numbers
group n by n % 5 into g
select new { Remainder = g.Key, Numbers = g };

foreach (var g in numberGroups)
{
Console.WriteLine("Numbers with a remainder of {0} when divided by 5:", g.Remainder);
foreach (var n in g.Numbers)
{
Console.WriteLine(n);
}
}
}
Lambda Expression
public void DataSetLinq40()
{
var numbers = testDS.Tables["Numbers"].AsEnumerable();

var numberGroups = numbers.GroupBy(n => n.Field("number")%5).Select(g => new {Remainder = g.Key, Numbers = g});

foreach (var g in numberGroups)
{
Console.WriteLine("Numbers with a remainder of {0} when divided by 5:", g.Remainder);
foreach (var n in g.Numbers)
{
Console.WriteLine(n.Field("number"));
}
}
}
Output
A backwards list of the digits with a second character of 'i':
nine
eight
six
five
Related Tutorial
Follow Us
https://www.facebook.com/Rookie-Nerd-638990322793530 # # # # #