1.从单张表或视图中获取数据
`using (CJZPEntities db=new CJZPEntities())
{
var data = from c in db.V_CJZP_Term //Linq查询
select new TermInfo
{
Term = c.Term,
TermStartDate = c.TermStartDate,
TermEndDate = c.TermEndDate
};
return data.ToList();
}`
2.连接表查询--单个字段
` var data = from c in db.T_SetSubitemPercentage
where c.SchoolID == SchoolID && c.CourseNO == CourseNO&&c.Term==Term
orderby c.ItemType
join b in db.T_SetSubitem
on c.ItemType equals(b.ItemType) into details //单个字段
from d in details
select new Subitem
{
ItemType = c.ItemType,
IsVisible = c.IsVisible,
Percentage = c.Percentage,
ItemName=d.ItemName
};
return data.ToList();`
3.连接表查询--多个字段(两个表中字段同名)
`var data = from c in dbHis.T_StudentQuality_His
where c.SchoolID == SchoolID && c.ClassID == c.ClassID &&c.Term==Term
join b in dbHis.T_SetQuality_His
on new { c.ItemID, c.PItemID, c.Term } equals new //字段同名
{ b.ItemID,b.PItemID, b.Term } into details
from d in details
select new StudentQuality
{
XH = c.XH,
Name = c.Name,
ClassID = c.ClassID,
PItemID = d.PItemID,
ItemID = d.ItemID,
ItemName = d.ItemName
};
return data.ToList();`
4.连接表查询--多个字段(两个表字段不同名)
`var data = from c in dbHis.T_StudentQuality_His
where c.SchoolID == SchoolID && c.ClassID == c.ClassID &&c.Term==Term
join b in dbHis.T_SetQuality_His
on new { c.ItemID, c.PItemID, GradeID = GradeID,c.Term } equals new //字段不同名
{ b.ItemID, b.PItemID, GradeID = b.GradeID,b.Term } into details
from d in details
select new StudentQuality
{
XH = c.XH,
Name = c.Name,
ClassID = c.ClassID,
PItemID = d.PItemID,
ItemID = d.ItemID,
ItemName = d.ItemName
};
return data.ToList();`