Linq to SQL gives NotSupportedException when using local variables
Posted
by zwanz0r
on Stack Overflow
See other posts from Stack Overflow
or by zwanz0r
Published on 2010-03-11T13:52:46Z
Indexed on
2010/03/11
19:49 UTC
Read the original article
Hit count: 303
c#
|linq-to-sql
It appears to me that it matters whether you use a variable to temporary store an IQueryable or not. See the simplified example below:
This works:
List<string> jobNames = new List<string> { "ICT" };
var ictPeops = from p in dataContext.Persons
where ( from j in dataContext.Jobs
where jobNames.Contains(j.Name)
select j.ID).Contains(p.JobID)
select p;
But when I use a variable to temporary store the subquery I get an exception:
List<string> jobNames = new List<string> { "ICT" };
var jobs = from j in dataContext.Jobs
where jobNames.Contains(j.Name)
select j.ID;
var ictPeops = from p in dataContext.Persons
where jobs.Contains(p.JobID)
select p;
"System.NotSupportedException: Queries with local collections are not supported"
I don't see what the problem is. Isn't this logic that is supposed to work in LINQ?
© Stack Overflow or respective owner