linq to sql - запрос, чтобы найти элементы без детей - PullRequest
0 голосов
/ 13 января 2011

Я пытаюсь написать запрос linq, который не запускает миллион дочерних запросов.

Что я хочу сделать, это что-то вроде этого в sql

select incoming.id, incoming.message, outgoing.message
from incoming
left join outgoing on incoming.id = outgoing.originalMessageId
where outgoing.message is not null

, так что в основном яя делаю левое соединение, просто я могу найти объекты, у которых нет детей.

есть ли способ сделать это, И вернуть набранную связку "входящих" предметов ...?

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

заранее спасибо, Даг

1 Ответ

1 голос
/ 13 января 2011

Если я правильно понимаю ваш вопрос, это должно сработать:

Incoming
.Join(
    Outgoing
        .Where(o => o.message != null),
    i => i.id,
    o => o.originalMessageId,
    (i,o) => new {Incoming=i, Outgoing=o}
)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...