а.Похоже, у вас есть опечатка здесь:
z => z.Id == 3
, но главная проблема - это b.Я предполагаю, что вы используете Linq для Entities, но это не ясно.В любом случае происходит то, что построитель запросов пытается превратить эти области. «.Ny (...)» в SQL, и не может этого сделать, поскольку области - это не IQueryable из вашей базы данных, а локальная переменная.Я предлагаю вам использовать что-то вроде этого, где пользовательский оператор Linq, как описано здесь или здесь .Это создаст предложение SQL in, содержащее все элементы в областях, с которыми вы, возможно, захотите сравнить.