My apologies in advance for the haziness here, but I find this problem somewhat difficult to explain (although I'm sure it's a fairly common problem/solution). I want to execute a query selecting rows from a table joined with another table where the other table is the "many" in the one-to-many relationship. But one of my where clauses needs to check the many part for a particular condition. Here's the code with the part I don't understand filled in with pseduocode.
var query =
from program in db.AcademicPrograms
where program.ProgramTitle.StartsWith(Keyword.Text) ||
program.ProgramDeptIDName.DeptName.StartsWith(Keyword.Text) ||
program.AcademicProgramKeywords.Contains(
<A value that starts with Keyword.Text>)
select
new
{
program.ProgramTitle,
program.ProgramHomePage,
program.ProgramCode,
program.ProgramType
};