1
EF 프로젝트에서 룩업 테이블을 사용해야하고 작업을 수행하기 위해 약간의 수정이 필요했지만 어떻게 쿼리 하는지를 확신 할 수 없습니다. 나는 세 개의 테이블이있는 경우엔티티 프레임 워크에서 찾아보기 테이블 사용하기
(이 질문을 설명하기위한 테스트 프로젝트입니다) :
PS_Lookup
---------
ID - Int - PK
PersonID - Int - FK : Person.ID
SkillID - Int - FK : Skill.ID
: 조회 테이블로 연결되어
Person
------
ID - Int - PK
PersonName - varchar[50]
및
Skill
-----
ID - Int - PK
SkillName - varchar[50]
ID 1의 기술을 가진 모든 사용자를 반환하고 싶다면 다음을 수행 할 수 있습니다.
var result = (from p in context.People
select new
{
PersonID = p.ID,
PersonName = p.PersonName,
FirstSkill = (from s in p.PS_Lookup
where s.ID == 1
select s.SkillName),
}).ToList();
내 질문에 위의 쿼리를 변경하여 ID가 1 인 스킬을 가진 모든 사람의 PersonName과 PersonID를 반환해야합니까? 즉 "FirstSkill"을 반환하지 않습니다. FirstSkill이 무엇인지 알기 때문에 이름이 필요 없으며 where
절로 무엇을해야하는지 알 수 없습니다.
놀라운, 감사합니다. 나는 Linq에 익숙해졌지만 여전히 나에게 다시 한번 여행을 떠난다. – GrandMasterFlush