Reputation: 15754
var groups = from p in dc.Pool
join pm in dc.PoolMembers on p.ID equals pm.PoolID
group p by p.Group into grp
select new { grp.ID };
This isn't working. Basically I want to do the grouping, and then select certain columns, but when I do select new { grp. }
I get no intellisense, so I'm obviously doing something wrong.
Any ideas?
Upvotes: 3
Views: 894
Reputation: 110221
var pools =
from p in dc.Pool
select new
{
p.ID,
GroupName = p.Group.Name,
Contribution = p.PoolMembers.Sum(pm => pm.Contribution),
p.GameName
};
Upvotes: 1
Reputation: 24872
I am not sure but, does the following code work?
var groups = from p in dc.Pool
join pm in dc.PoolMembers on p.ID equals pm.PoolID
group p by p.Group into grp
select grp.Select(g=> g.ID);
EDIT
var groups = from p in dc.Pool
join pm in dc.PoolMembers on p.ID equals pm.PoolID
group p by p.Group into grp
select grp.Select(g=> new{
Id = g.Id,
GroupName = grp.Key.Name,
Contribution = pm.Contribution,
GameName = p.GameName, });
Upvotes: 1
Reputation: 2101
I think this is what you are looking for
var groups = from p in dc.Pool
join pm in dc.PoolMembers on p.ID equals pm.PoolID
group p by p.Group into grp
select new { grp.Key.ID, GroupName = grp.Key.Group.Name, grp.Key.GameName };
Upvotes: 1