Asp.net Linq中产生错误的关系

Asp.net Linq中产生错误的关系,asp.net,sql-server,visual-studio-2010,linq-to-entities,Asp.net,Sql Server,Visual Studio 2010,Linq To Entities,我有一张桌子 场 和部门 场 亲戚 Dept.DeptNo= EmpInf.DeptNumber 创建linq查询以提取EmpName及其所在部门时 我试着写Linq如下 var obj1 = from c in obj.EmpInfs join d in obj.Dept1 on c.DeptNumber equals d.DeptNo into s where c.EmpName == "m"

我有一张桌子 场

和部门 场

亲戚

Dept.DeptNo= EmpInf.DeptNumber 
创建linq查询以提取EmpName及其所在部门时 我试着写Linq如下

var obj1 = from c in obj.EmpInfs join
                    d in obj.Dept1 on c.DeptNumber equals d.DeptNo into s
                   where c.EmpName == "m"
                   select new { EmpName=c.EmpName, DeptName=s};

        GridView1.DataSource = obj1;
        GridView1.DataBind();
也试过这个

 var obj1 = from c in obj.EmpInfs 
                   from d in obj.Dept1
                   where c.EmpName == "m"
                   select new { EmpName=c.EmpName, DeptName=d.DeptName};

        GridView1.DataSource = obj1;
        GridView1.DataBind();
在这两种代码中,它都没有给出期望的输出。谢谢你的帮助

var obj1 = from c in obj.EmpInfs join
                   d in obj.Dept1 on c.DeptNumber equals d.DeptNo
                   where c.EmpName == "m"
                   select new { EmpName=c.EmpName, DeptName=d.DeptName};

第一次尝试的问题是“s”是类型为“Dept”的对象,而不是部门名称。第二次尝试的问题是它正在进行交叉连接,

结果如何?你期望什么?公司名称和工作部门。
 var obj1 = from c in obj.EmpInfs 
                   from d in obj.Dept1
                   where c.EmpName == "m"
                   select new { EmpName=c.EmpName, DeptName=d.DeptName};

        GridView1.DataSource = obj1;
        GridView1.DataBind();
var obj1 = from c in obj.EmpInfs join
                   d in obj.Dept1 on c.DeptNumber equals d.DeptNo
                   where c.EmpName == "m"
                   select new { EmpName=c.EmpName, DeptName=d.DeptName};