Я застрял в этом запросе linq.Linq where on include
У меня эти таблицы.
ID A B C D
1 some data
2 some other data
Затем, для каждой записи в этой таблице я могу не иметь ни одного или много строк
ID TableA_ID R
1 1 1
2 1 2
3 1 5
4 2 2
Например. Ряд 1 (некоторые данные) имеет 3 строки по таблице В.
Я попытался с помощью
tableA.Include(x => x.tablebchilds.Where(d => d.R == 1)).ToList()
, но он не работает. Со многими другими.
Целью этого запроса является возвращение tableA.row
# 1, если я передам его 1
как значение (значение R
). Number <> 2
не даст никакого результата.
Таблицы связаны на EF. Так TableB.tableA_ID
чуждо ключ tableA.ID
Edit # 1
Я попробовал ответы на вопрос, помеченный как дублируется без удачи. Дайте этому 2 tableA.rows, если пользователь вставляет в качестве параметра, запрос linq должен возвращать Строка № 1, некоторые данные. Если передается как параметр, ничего не возвращается.
Работающий SQL заявление:
SELECT [TableA].* FROM [TableA] JOIN [TableB] ON [TableA].[Id] = [TableB].[TableA_Id] WHERE [TableB].[R] = 1
Спасибо!
@Gert Арнольд: Я не думаю, что это дубликат, потому что я думаю, что Engerlost просит что-то другое, хотя по общему признанию, это не очень понятно. – jjj
@jjj Может быть. Дело в том, что 'Include' с' Where' не представляется возможным (к сожалению, достаточно). Это задается снова и снова. Существует работа, о которой я расскажу в двух экземплярах. Если ОП пытается достичь чего-то другого, да, это должно быть разъяснено. –
@GertArnold Запрос на этот ответ не будет работать в моем случае. Я знаю, что Include with where is is possible. Я отредактирую свой вопрос, чтобы уточнить это. Благодаря! – Jaxedin