LINQ加入方法

时间:2013-04-30 09:08:21

标签: c# linq join

得到3个班级,

public calss Employee
 {
    public int ID { get; set; }
    public string FName { get; set; }
    public string LName { get; set; }
    public int Age { get; set; }
  }   

public class Sale
{
    public int EmpID { get; set; }
    public DateTime Date { get; set; }
    public int Amount { get; set; }
}

和DB类,用于启动员工和销售列表,并包含涉及LINQ查询的方法:

其中一种方法,需要获得一年的时间并让我回到当年所有员工的销售,现在是最后一次选择我想从加入列表中仅获取员工对象而不自己放置属性,并且ofc创建一个独特的所以我不会有重复,在这里我到目前为止,我喜欢一些帮助,因为我收到错误通知:

        public List<Employee> GetEmployeesMadeSale(int year)
        {
            var emploSales =
                Employees.Join(
                Sales,
                e => e.ID,     //empID = e.ID, Amount = s.Amount
                s => s.EmpID,
                (e, s) => new { Emplo = e, Year = s.Date.Year })
                .Where(es => es.Year == year)
                .Select(es => new Employee() = es.Emplo)
                .ToList(); 

            //return emploSales
        }

1 个答案:

答案 0 :(得分:1)

问题在于您Select

.Select(es => new Employee() = es.Emplo)

尝试这样做

.Select(es => es.Emplo)