emp_master:
EMPID,empname
我有一个名为
的表employee_travel
travelid empid location date
1 101 abc 3/4/2014
2 102 lmn 4/4/2014
3 101 abc 5/4/2014
4 102 lmn 6/4/2014
5 101 xyz 7/4/2014
6 102 cdf 8/4/2014
现在我想像员工那样显示员工记录:
empid location date
101 abc --
101 abc --
101 xyz
102 lmn
102 lmn
102 cdf
我在linq中写了以下查询:
var data = (from r in context.employee_travel
group r by new
{
r.Emp_id
} into g
select new
{
name = r.emp_master.empname,
r.date,
r.location
})
但它在这一行上给我错误:
****name = r.emp_master.empname,
r.date
r.location****
这里{name在查询中用作自治类型是我的gridview **的d ** atatextfield的名称。}
任何人都可以编辑我的linq查询以满足我的需求????
请帮助我。我对linq非常新,所以我不知道如何编写这个查询。
答案 0 :(得分:0)
from et in employee_travel
orderby et.empid
select new
{
Employee = et.Employee,
TravelRecord = et, //if you want objects
Name = et.Employee.Name,
Date = et.Date //if you want simple types
}
在该示例中,我选择返回实体,但您当然可以返回姓名,日期等。如果需要,您可以添加更多订购。
或者您可以获取employee_travel
实体并添加employee
(确保您拥有正确的包含属性名称)
db.employee_travel.Include("employee").OrderBy(et=>et.empid).ToList()