I have a linq to sql database. Very simplified we have 3 tables, Projects and Users. There is a joining table called User_Projects which joins them together.
I already have a working method of getting IEnumberable<Project>
for a given user.
from up in User_Projects
select up.Project;
Now I want to get the projects the user isn't involved with. I figured the except method of IEnumerable would be pretty good here:
return db.Projects.Except(GetProjects());
That compiles, however I get a runtime error: "Local sequence cannot be used in LINQ to SQL implementation of query operators except the Contains() operator."
Is there any way to get around this?
Update:
A few views but no answers :p
I have tried this:
IEnumerable<Project> allProjects = db.Projects;
IEnumerable<Project> userProjects = GetProjects();
return allProjects.Except(GetProjects());
I know it's essentially the same as the original statement - but now i dont get a runtime error. Unfortunately, it doesn't really do the except part and just returns all the projects, for some reason