Если вы действительно хотите определенный индекс, вы можете использовать метод Skip () с First () .
var rowOffset = 0;
var results = (from row in db.Table
select row).Skip(rowOffset).First()["columnName"];
Но если вы не используете предложение Где , я бы действительно рекомендовал использовать индексатор. Индексатор в значительной степени является прямой ссылкой, тогда как оператор LINQ будет использовать итератор объектов.
Также не забывайте, что вы можете делать гораздо более сложные вещи с помощью LINQ.
var rowOffset = 0;
var pageLength = 10;
var results = (from row in db.Table
let colValue = row["columnname"]
where colValue != null
select colValue.ToString()
).Skip(rowOffset)
.Take(pageLength)
.ToArray();
var commaString = string.Join(", ", results);