2012-06-11 2 views
0
skipwhile

사용하여 요소를 건너 뛰려면 lstSnapshotExcludingCols 즉, 정수 목록.은 내 다음 요구 사항에 적합한 코드를 얻기 위해 고군분투

누군가가 예상되는 결과를 얻는데 나를 도울 수 있습니까? 다음 코드를 사용하고 있지만 모든 datacolumns 반환하고 아무것도 건너 뜁니다.

Dim fields = row.ItemArray.SkipWhile(Function(value, index) lstSnapshotExcludingCols.Contains(index)) 

답변

4

은 사용자가 아닌 SkipWhile(...)을 수행하여 DataRow에서 데이터를 선택하는 동안

Dim columnNames = ldtCurrentData.Columns.Cast(Of DataColumn)() 
        .SkipWhile(Function(column) 
          lstSnapshotExcludingCols.Contains(column.Ordinal)) 
        .Select(Function(column) column.ColumnName).ToArray() 

나는 비슷한 문제를 가지고있다. 그것은 나를 위해 일한 ..

Dim columnNames = ldtCurrentData.Columns.Cast(Of DataColumn)() 
       .Where(Function(column) 
        Not lstSnapshotExcludingCols.Contains(column.Ordinal)) 
       .Select(Function(column) column.ColumnName).ToArray() 
+0

고마워요 .. BTY SkipWhile 내 시나리오에 좋습니다 내 skipwhile 코드에서 실수가 무엇인지 왜 어떤 생각 : 간단한 Where(...) 트릭을 할 것인가? – user899055

+0

저는 LINQ를 3 년 이상 사용해 왔으며'SkipWhile' 메서드를 사용한 적이 없습니다. 취지는 구현보다 정책보다 열등한 정책을 통한 구현과 같은 취향 : 당신이하고있는 일을 __what__하고, __how__하고 있습니다. 답이 맞으면 받아 들여주세요. – bluevector

+0

나는 datarow를 선택하는 동안 비슷한 문제가 있습니다. 내 질문을 편집했습니다. 좀 봐 주시겠습니까? – user899055

관련 문제