简体   繁体   English

Linq:从2个数据表中选择,其中第一个表中的列ID =第二个表中的列ID

[英]Linq: Select from 2 datatable where column id from first table = column id from second table

The SQL would be something like SQL将是这样的

select GeneralData.id, GeneralData.name, GeneralData.last_name, Student.id
from GeneralData Inner JOIN Student ON Student.id=GeneralData.id

GeneralData is dt1 Student is dt2 what I want to get is dt3 have some proposals? GeneralData是dt1学生是dt2我想得到的是dt3有什么建议吗?

 var query =
            from s in db.Student
            from g in db.GeneralData
            where s.id == g.id
            select new
            {
                g.id,
                g.name,
                g.last_name
            };
var query = from data in dc.GeneralData
join stud in dc.Students in data.id equals stud.id
select new
{
 data.id, data.Name, data.LastName, stud.id
};

Something like this: 像这样:

var result= (
        from general in db.GeneralData
        join student in db.Student
            on general.id=student.id
        select new
        {
            general.id,
            general.name,
            general.last_name,
            studentId=student.id
        }
    );

where db is the linq data context 其中db是linq数据上下文

As a method chain: 作为方法链:

dt2.Where(s=>s.id == 1)
.Select(s=> new {Stud = s, Data= dt1.Where(g=>g.id == s.id)}).First()
.Select(q=> new {q.Stud.id, q.Data.name, q.data.last_name}).FirstOrDefault();

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM