엔티티 프레임 워크와 linq를 사용하고 for 루프를 사용하지 않고 부모 배열을 반환하려고합니다. 기본적으로 여기에 직면 한 것과 같은 예제가 있습니다 (실제 예제는 제공 할 수 없지만 이것은 동일한 것입니다). 사람이 있고 그 사람을 검색 할 때 그 사람의 조상을 찾으려고합니다 (남성 전용). 그래서 "아버지"재산이 null이 될 때까지 다시 돌아가서 배열 할 것입니다. 즉, 우리는 그 사람의 아버지가 누구인지 모릅니다. Entity Framework에서이 작업을 수행하는 가장 좋은 방법은 무엇입니까? 내가 for 루프로 이런 짓을 했을까 방법객체가있는 부모 목록 반환
이class Person()
{
public string Name { get; set; }
public Guid FatherId { get; set; }
public virtual Person Father { get; set; }
}
class PersonDto()
{
public string Name { get; set; }
public IEnumerable<PersonDto> Ancestors { get; set; }
}
입니다 :
Person person = Context.People.Find(personId);
PersonDto personDto = person.ToDto();
Person father = person.Father;
while (father != null)
{
personDto.Ancestors.Add(father.ToDto());
father = father.Father;
}
당신이하려고하는 것에 대한 코드 예제를 제공한다면 이것이 더 명확해질 것입니다. 어쩌면 이것을 for 루프로 조롱 한 다음 루프를 돌아 다닐 수 있도록 도울 수 있습니까? 우리가 계속하기에 충분한 정보가 여기에 없습니다. – pquest
의견을 보내 주셔서 감사합니다. 희망 하시겠습니까? – GBreen12
LINQ에서 가장 많이 할 수있는 것은 부모 속성을 포함하는 것입니다. 그러면 원래 Person 객체에 부모가 있고 그 다음 조상을 만드는 루프가 생깁니다. –