고유 한 쿼리 작업이있는 두 테이블의 결과에 따라 쿼리를 작성하는 데 어려움을 겪고 있습니다.이 중첩 쿼리를 작성하려면 어떻게해야합니까?
아무도 도와 줄 수 있습니까?
public IQueryable<Message> GetMessages(int user_id)
{
// Get MessageReceiver tables that share receiver id
IQueryable<MessageReceiver> messageReceivers = GetMessageReceivers().Where(messageReceiver => messageReceiver.receiver_id == user_id);
List<Message> messages = new List<Message>();
foreach (MessageReceiver messageReceiver in messageReceivers)
{
foreach (Message message in DataContext.Messages)
{
if (message.id == messageReceiver.message_id)
{
messages.Add(message);
}
}
}
return messages.AsQueryable<Message>();
}
감사합니다, 스콧 니므롯
죄송합니다 (당신은 마이크로 소프트 SQL 공급자와 EF하기 위해 SQL 또는 LINQ에 LINQ를 사용하고 있다고 가정), 내가 다시 반환하지 않은 이 문제를 아직 확인하려면 –
예. 두 테이블 모두 동일한 데이터 컨텍스트에 속합니다. –
단일 데이터 컨텍스트를 고려하여 솔루션을 업데이트했습니다. ORM이 사용하는 마지막 질문 하나가 있습니까? LINQ to SQL? 엔티티 프레임 워크? –