Выберите элементы из списка <object>, составив список <guid>в C # - PullRequest
0 голосов
/ 12 октября 2011

У меня есть ListAllUsers.Пользователь, имеющий идентификатор пропеорта (как Guid), имя (как String), адрес (как String).У меня есть другие идентификаторы списка идентификаторов пользователей, которые выбраны из пользовательского интерфейса.Я хочу получить список selectedUsers, где идентификаторы из AllUsers.Я пытаюсь получить его по LINQ.Могу ли я сделать это одним утверждением, без нескольких итераций?как?

Ответы [ 2 ]

6 голосов
/ 12 октября 2011

Если я правильно понимаю ваш вопрос, вы можете сделать что-то вроде:

var selectedUsers = allUsers.Where(user => selectedUserIds.Contains(user.Id));
0 голосов
/ 12 октября 2011

Другой возможный подход:

var selectedUsers = selectedUserIds.Select(id => allUsers.First(user => user.id == id))

Это вызовет исключение, если один из selectedUserIds не отображается на пользователя, который может быть тем, что вы хотите. Метод Фредерика молча проглотит.

...