다음 코드에서는 foreach 문을 3 개 사용하고 있습니다. 항목 목록이 다른 목록과 일치 할 때 목록을 채우기 만하면되지만 일치하지 않는 항목도 추가해야합니다. 그래서 다음과 같은 쉬운 방법이 있는지 궁금합니다.목록을 통한 C# 검색
List<T> ds = new List<T>(); //is populated
foreach (var b in template.Bs)
{
List<BD> tempList = new List<BD>();
foreach (BD bd in b.BDs)
{
Boolean found = false;
foreach (DV dv in items)
{
if (bd.C == dv.C)
{
found = true;
tempList.Add(new BD()
{
//populating
});
}
}
if (!found)
tempList.Add(new BD()
{
//populating
});
}
}
LINQ를 사용할 수 있습니까? –
도움이 될 실제 코드를 게시하면 도움이 될 것입니다 ...이 조각은 외부 foreach 루프에 로컬 인 'tempList'를 채 웁니다. 따라서 효과적으로 외부 루프가 실제로 아무 것도 얻지 못합니다! – jerryjvl
외부 루프는 여러 그룹의 목록을 거칩니다. 다음 루프는 해당 목록을 반복합니다. 다음 루프는 일치시키려는 목록을 반복하며 생성 된 새 목록에 데이터를 전달하지만 여전히 2 개의 foreach 목록을 유지해야합니다. 일치하지 않는 문서와 내부 foreach 루프와 일치하는 문서. 이것이 어디에서 복잡 해지는 지 보시오. – Bruce227