0

我有一个表 EmpInf 字段

EmpId
EmpName
Salary
DeptNumber

和部门领域

DeptNo
DeptName

关系

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();

在这两个代码中,它都没有给出期望的输出。感谢您的帮助

4

1 回答 1

1
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”是“部门”类型的对象,而不是部门名称。第二次尝试的问题是它正在进行交叉连接,

于 2012-09-05T11:01:19.480 回答