내 코드에서 1 번째 성명서를 가지고 있고 정확한 수를 제공하지 못한다는 것을 알았습니다. 정답이 18 일 때 1을 반환했습니다. 문제를 디버깅하려면 여기에서 2 번째 명령문을 작성하고 18을 반환합니다. 나는이 둘의 차이점을 보지 못했다. 1 등이 조금 더 컴팩트 한 것처럼 보입니다.이 두 LINQ 문의 차이점은 무엇입니까?
저는 현재이 두 문장을 연속적으로 실행하고 있습니다. 데이터베이스가 둘 사이에서 변경되지 않았 음을 확신합니다.
int count = (from s in surveysThisQuarter
where s.FacilityID == facility.LocationID
select s.Deficiencies).Count();
VS
var tempSurveys = from s in surveysThisQuarter
where s.FacilityID == facility.LocationID
select s;
int count = 0;
foreach (Survey s in tempSurveys)
count += s.Deficiencies.Count();
감사합니다. – jamone