I would like to create a query with a cross apply into a user defined table value function in LINQ. The SQL would be really rather simple as below:
SELECT *
FROM MyTable mt
CROSS APPLY MyTVF(mt.id)
This post gives an example of a LINQ query that results in generated sql that contains both a cross apply and an outer apply but only for a sub query not for a tvf. This article confirms that LINQ to SQL will generate cross apply and outer apply operators for "relationship navigations" but I am not sure what that means in this context. This post describes pretty much what I want to do and the answer says the only way to do this is to wrap the SQL query in a stored procedure and then call the sp via LINQ. I hope that this is not true because I actually need a tvf that can be used in this way throughout an application in multiple LINQ queries so "wrap it in an sp" would not work for me. Does anyone know of a way to get something like the simple SQL statement above via LINQ?
How about this:
from mt in db.MyTable
from mf in db.MyTVF (mt.id)
select new { mt.Blah, mf.Blah }
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With