2012-03-20 31 views
1

当摆弄这个时我无法获得语法权限。删除后,我只需要UserIds列表。获取某个字段的列表返回

List<int> unselectedHockeyPlayers = allHockeyPlayers.Where(u => hockeyPlayers.Contains(u.UserId)).ToList()); 

回答

4

您错过了对UserId s的预测。

List<int> unselectedHockeyPlayers = allHockeyPlayers 
    .Where(u => !hockeyPlayers.Contains(u.UserId)) 
    .Select(u => u.UserId) 
    .ToList() 

或者更简洁地说,

List<int> unselectedHockeyPlayers = allHockeyPlayers 
    .Select(u => u.UserId) 
    .Except(hockeyPlayers) 
    .ToList(); 
0

的ToList()必须是在末端。

List<int> unselectedHockeyPlayers = allHockeyPlayers.Where(u => hockeyPlayers.Contains(u.UserId))).Select(u => u.UserId).ToList(); 

编辑:你也必须具体选择你想使用.Select()子句的字段。否则,你会得到一个列表

相关问题