Linq запрос с массивом в предложении где?

Я искал это, но все еще не могу заставить это работать на меня. У меня есть массив идентификаторов, связанных с пользователем (их идентификатор организации). Они помещаются в int [] следующим образом:

int[] OrgIds = (from oh in this.Database.OrganizationsHierarchies
                       join o in this.Database.Organizations on oh.OrganizationsId equals o.Id
                       where (oh.Hierarchy.Contains(@OrgId))
                          || (oh.OrganizationsId == Id)
                       select o.Id).ToArray();

Код там не очень важен, но он показывает, что я получаю целочисленный массив из запроса Linq.

Из этого, однако, я хочу выполнить другой запрос Linq, который получает список персонала, этот код выглядит следующим образом:

List<Personnel> query = (from p in this.Database.Personnels
                                where (search the array)
                                select p).ToList();

Я хочу добавить в предложении where способ выбора только тех пользователей, у которых в массиве присутствуют значения OrganizationId. Итак, в SQL, где я хотел бы сделать что-то вроде «где OrganizationId = '12' или OrganizationId = '13' или OrganizatonId = '17'».

Могу ли я сделать это довольно легко в Linq / .NET?

Ответы на вопрос(4)

Ваш ответ на вопрос