Можно ли использовать SQL Server 2008 CROSS APPLY с LINQ-2-SQL?
Пример SQL:
select d.dateCol, tvf.descr, tvf.value
from dateTable d
cross apply tvFunction(d.dt, 'anotherParam') tvf
where d.category='someCat'
CROSS APPLY позволяет использовать значения из таблицы (в примере dateTable) в качестве параметров функции tablevalue. Это очень полезно, если вам нужно выполнить сложный расчет (инкапсулированный в функцию табличного значения) для диапазона входных данных.


Единственный способ использовать это - заключить приведенный выше код в хранимую процедуру и заключить его в LINQ to SQL.
Попробуй это:
from d in dateTable
from tvf in tvFunction(d.dt, 'anotherProgram')
where d.category = 'someCat'
При связывании вызовов методов используйте SelectMany, который позволяет включать лямбда-выражения для указания как вызова функции, так и формы результата.
Конечно, это способ сделать это или прибегнуть к DbDataReader (что я и сделал)