1
나는 코드가 더 잘될 수 있다는 것을 알고 있으며, 어떻게해야할지 모르겠습니다. 나는 이것을 도울 수있는 몇 가지 방법이 있다고 생각하지만, 이것이 원소 프로그래밍이라면 나를 용서해 주시기 바랍니다.C# 2012 목록 개체 제한
개체 목록을 채우기 위해 DataReader를 반복하고 있지만 목록의 인덱스 수를 제한하려고합니다. 나의 현재 코드는 다음과 같습니다
이while (dr.Read())
{
temp.Add(new Object()
{
PropertyA = dr.GetString(0),
...
...
});
}
if (temp.Count > 100)
{
for (int i = 0; i <= 100; i++)
{
retObject.Add(new Object()
{
PropertyA = temp[i].PropertyA,
...
...
});
}
return retObject;
}
else
{
return temp;
}
이 본질적으로 여기에 초보자 프로그래머처럼 너무 많은 소리없이, 데이터 집합에 두 번 루프 ... 그래서 100에 결과 집합을 제한하는 가장 좋은 방법 일 것입니다 무슨 쿼리 자체에서 TOP (###)을 사용하지 않고? (우리는 Stored Procs를 사용하여 질의를 변경하는 것이 의문의 여지가 없습니다.)
감사합니다. 나는 당신의 대답을 고대합니다. 첫 번째 루프에서
당신이'dr.Read()'루프에서 카운터를 사용하여 문제가 있습니까? – Justin
probabaly 그냥'반환 temp.GetRange (0,100)' – IdeaHat
BTW - 현재 코드는 101 항목을 반환합니다 - 그게 원하는가요? –