2012-06-05 3 views
2

익명 개체를 반환하는 Linq 쿼리를 만들 때 카운터가 올라갈 수 있습니까?각 결과에 대한 카운터가있는 익명 형식

예.

var results = from foo in bar select new { foo.ID, foo.Name, Counter = ???? }  

이미 증가하는 숫자를 반환하는 메서드를 정의하려고했지만 최종 결과는 모든 개체에 대해 동일하게 적용됩니다.

는 명확히하기 위해 : 나는 결과가

ID, 이름을되고 싶어, 1 개
ID, 이름, 2
아이디, 이름, 3

이렇게요

답변

1
var counter = 0; 
var results = 
    from foo in bar 
    select new { foo.ID, foo.Name, Counter = ++counter }; 
0

뭔가 :

var result= db.bar.Select((foo,i)=>select new {foo.ID, foo.Name, Counter = i+1}); 
0

를 사용하여 인덱스 선택() 오버로드 :

var results = bar.Select((foo, i) => new { foo.ID, foo.Name, Counter = i + 1});