컬렉션의 일부를 다른 컬렉션으로 추출하려고합니다. 쉽게 for 루프를 사용하여 동일한 작업을 수행 할 수 있지만 linq 쿼리가 동일하게 작동하지 않습니다. testColl1가 testColl2 소스 &입니다Linq 쿼리를 사용하여 컬렉션 자르기
Collection<string> testColl1 = new Collection<string> {"t1", "t2", "t3", "t4"};
Collection<string> testColl2 = new Collection<string>();
for (int i = 0; i < newLength; i++)
{
testColl2.Add(testColl1[i]);
}
가 있습니다 : 그래서 나에게 질의를하는
기존 방법 (/ 초보자 튜토리얼 링크 설명과 함께 가능한 경우) 수정 도와주세요, Linq에있는 초신자입니다 count = newLength의 원하는 잘린 콜렉션.
나는 다음과 같은 LINQ 쿼리를 사용했지만, 그들 중 누구도 작동하지 않습니다 ...
var result = from t in testColl1 where t.Count() <= newLength select t;
var res = testColl1.Where(t => t.Count() <= newLength);
예, U는 정확합니다. 실수로 +1을 사용 했으므로 편집되었습니다. Thx – Biki
@Biki : 귀하의 수정 내용을 반영하여 답변을 편집했습니다. – jason
끝에 ToTo() 또는 .ToArray()를 추가하면 IEnumerable을 컬렉션으로 변환하는 데 도움이되지 않습니다. testColl2 = (Collection)와 같이 사용하는 것이 좋습니다. testColl1.Take (newLength); –
Biki