Я не уверен, поддерживает ли LINQ to SQL (но это возможно), но есть перегрузка на Queryable.Select , который принимает лямбда-индекс с индексатором , Вы можете написать свой запрос следующим образом:
db.Authors.Select((author, index) => new
{
Lp = index, Name = author.Name
});
UPDATE:
Я провел несколько тестов, но, к сожалению, LINQ to SQL не поддерживает эту перегрузку (3.5sp1 и 4.0). Выдает NotSupportedException
с сообщением:
Неподдерживаемая перегрузка, используемая для запроса
оператор «Выбор».