C# 使用LINQ从多个表检索数据

C# 使用LINQ从多个表检索数据,c#,sql,linq-to-sql,sql-server-ce,C#,Sql,Linq To Sql,Sql Server Ce,我是linq的初学者,有三个表(sql ce 3.5),如下所示: 课程:(PK)课程代码,课程名称 类:(PK)类代码、字段代码、类名称 ClsCrs:(主键)类代码,(主键)课程代码 我想将此查询转换或重写为linq,并将结果分配给组合框数据源: `SELECT CourseName FROM class, clscrs, course WHERE ClassTitel = @ClassTitel and class.classcode = clscrs.classcode and clsc

我是linq的初学者,有三个表(sql ce 3.5),如下所示: 课程:(PK)课程代码,课程名称 类:(PK)类代码、字段代码、类名称 ClsCrs:(主键)类代码,(主键)课程代码

我想将此查询转换或重写为linq,并将结果分配给组合框数据源:

`SELECT CourseName FROM class, clscrs, course WHERE
ClassTitel = @ClassTitel and class.classcode = clscrs.classcode and
clscrs.coursecode = course.coursecode`
我该怎么做


谢谢

不清楚ClassTitel字段属于哪一个表(假定为class table)。还可以将集合名替换为EF或Linq to SQL生成的集合名

var query = from cl in db.class
            join cc in db.clscrs on cl.classcode equals cc.classcode
            join cs in db.course on cc.coursecode equals cs.coursecode
            where cl.ClassTitel == "value"
            select cl.CourseName;

comboBox1.DataSource = query.ToList();
你可以试试这个

var query = (from c in db.class 
             from v in db.clscrs 
             from n in db.course 
             where c.ClassTitel=="yourinput" 
                 && c.classcode = v.classcode 
                 && v.coursecode = n.coursecode 
             select n.CourseName).ToList();

您正在使用哪个LINQ提供程序?LINQ到SQL?实体框架?尼伯酸盐?还有别的吗?