В дополнение к вышеупомянутым методам вы также можете анализировать его как коллекцию Enumerable, например:
(from x in table
....
).AsEnumerable()
.Select(x => ...)
Это также дает дополнительное преимущество, облегчающее жизнь при создании анонимного объекта, например:
(from x in tableName
select x.obj)
.Where(x => x.id != null)
.AsEnumerable()
.Select(x => new {
objectOne = new ObjectName(x.property1, x.property2),
parentObj = x
})
.ToList();
Помня, однако, что анализ коллекции как Enumerable тянет ее в память, поэтому она может быть ресурсоемкой! Здесь следует соблюдать осторожность.