나는 while (true) 루프에서 처리중인 위도/경도 좌표 목록을 가지고 있습니다. 루프가 진행되는 동안 처리를 위해 원격 서비스로 전송되는 쿼리를 작성하고 있습니다. 원격 서비스는 12 쌍의 위도/경도 좌표 만 수락 할 수 있지만 목록에 수천 개가 포함될 수 있습니다. 내가하고 싶은 것은 질의를 작성한 다음 매 12 루프를 처리하기 위해 그것을 전송하는 것입니다.이 C# 루핑 및 처리 코드를 수정하는 방법은 무엇입니까?
List<string[]> lList = FromDB();
int i = 0;
int intLastIndex - lList.Count;
string strQuery = String.Empty
while(true)
{
strQuery = lList[i][0] + "|" + lList[i][1];
if(((i % 11) == 0) && (i != 0))
{
SendToRemoteService(strQuery);
strQuery = String.Empty;
}
if(i == intLastIndex)
{
break;
}
i++
}
그러나 이것은 범위를 벗어나는 배열을 생성하며 모든 레코드를 처리하지 않습니다. 누구든지 더 나은 접근법을 제안 할 수 있습니까?
마크
언제든지 다른 버그를 볼 수 있습니다. –
이 경우 TDD를 사용해야합니다.) –
GroupBy 문을 사용하면 메모리에 모든 데이터가 저장됩니다 (메모리를 관리해야 함) – Maghis