Linq 2 SQL вопрос группирования - PullRequest
3 голосов
/ 03 июня 2010
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 };

Это не работает.По сути, я хочу выполнить группировку, а затем выбрать определенные столбцы, но когда я получаю select new { grp. }, я не получаю смысла, поэтому я, очевидно, что-то делаю не так.

Есть идеи?

Ответы [ 3 ]

1 голос
/ 04 июня 2010

Я думаю, это то, что вы ищете

      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 }; 
1 голос
/ 04 июня 2010
var pools = 
  from p in dc.Pool
  select new
  {
    p.ID,
    GroupName = p.Group.Name,
    Contribution = p.PoolMembers.Sum(pm => pm.Contribution),
    p.GameName
  };
1 голос
/ 04 июня 2010

Я не уверен, но работает ли следующий код?

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, });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...