foreach (var item in result)
{
var name = item.Name;
var count = item.Count;
...
}
This will only work inside the same method where the LINQ query is located, since the compiler only then finds out what properties are available in the anonymous object type ( new { }) used in your LINQ select.
If you return a LINQ query to the calling method and want to access it as shown above, you need to define an explicit type and use it in the LINQ query:
class NameCountType
{
public string Name { get; set; }
public int Count { get; set; }
}
...
return from ... in ...
...
select new NameCountType
{
Name = ...,
Count = ...,
};
stakx source
share