2014-11-07 3 views
-3

Got следующий запрос:Найти позицию в анонимном списке

[I Simplied запрос для этого примера]

var Query = (from U in Users 
      select new { ID = U.ID,Name = U.Name, Surname = U.Surname}).ToList(); 

Как я могу найти вторую строку в запросе?

Поблагодарив всех вас заранее

+0

Вы честно говоря мне, что вы не знаете, как индекс в списке? Это действительно простой материал, я предлагаю вам прочитать некоторые материалы на C# и списках, прежде чем публиковать такие вопросы. – James

+0

Вы правы - я имел в виду получить, например, идентификатор второй строки. Формы [2] .ID - Извините. Blonde Moment. – user1203996

ответ

0

Поскольку Query списка вы можете использовать индексные аксессор, которые основаны 0.

Таким образом, вторая строка будет выглядеть так:

Query[1] 

Убедитесь, однако, что число записей, возвращаемых в 2 или выше, или вы получите исключение.

0

Поскольку это список, вы можете просто сделать

Query[1]; 
0

Если Users является IQueryable<T> и вы заинтересованы только в идентификационном второго ряда, то вы можете сделать

var id = Users.Skip(1) 
       .Take(1) 
       .Select(x => x.ID); 

Это будет только верните поле идентификатора второй строки из БД и избегайте вытягивания всех записей и фильтрации в памяти.

В качестве альтернативы, если Users это уже список в памяти (например, List<T>), то вы можете просто сделать

var id = Users[1].ID; 
Смежные вопросы