0
다음 행을 반복하고 데이터베이스의 파일을 검색하는 다음 함수가 있습니다. 파일이 데이터베이스에서 발견되지 않으면 함수가 빈 ResultRow를 반환해야하는 경우 저장소에서 null을 반환합니다. if 문 다음에 Assert()가 실행되는 경우도 있습니다. 왜? 어떻게 가능합니까?수익률 반환 후 다음 명령문이 실행되는 이유는 무엇입니까?
IEnumerable<ResultRow> DoRows(SequenceListWithQc list,
IList<TestSpecification> testSpecs, bool writeResults=false)
{
foreach (var row in list.Rows)
{
var result = new ResultRow();
result.FileName = row.Columns[list.Headers.IndexOf("File Name")];
var rawFile = repository.GetRawFileByFilename(result.FileName);
if (rawFile == null)
{
yield return result;
}
Debug.Assert(rawFile != null);
}
}
에 다음 행에 이동을 계속 호출 할 수 있습니까? 우리가 다른 루프로 가고 다음 루프에서'rawFile'이'null' 일 수도 있습니다 ... –
'yield return'은 함수에서 돌아 오지 않습니다 * –
코드를 통해 코드를 실행 해 보았습니까? 디버거? – MickyD