0

在问这个问题之前,我尝试在用户414076给出的StackOverflow上实现这个公认的答案,但不幸的是我不能......

所以我想问我哪里错了..我应该如何继续有效的“目标”..

在我的 winforms .Net4 项目中

我有两个类:Employee 和 Mods .. 以及 Employee 的一个子类:RM

Mods 类携带的数据类似于政府的“工作许可”规则 ,即如果员工是机械工程师,那么应该在其中一个机械实验室工作,应该有最低工资。每小时“x”美元,-如果成功完成研究-应该将 %1 的研究收益作为成功奖,等等。..

具有许多属性的员工类,并携带员工的所有数据,姓名、 家庭地址、 电话 列表 、年假列表、医院疾病论文 列表、Should_Attend_Seminars 列表、AcceptedWorkingRules 列表 等。..

RM 子类包含员工的详细信息,因为它是工作规则,WorkingType - 是每小时或每周或每月的薪水,是否有额外的佣金等 - ,WorkingHours, PermittanceID - 作为对 Mods 类 ID 值的引用 - 等。 ..

我的目标是从所有员工的静态列表中选择员工作为单独的列表(如果单独的列表不可能,则在列表中分组)其中员工的 RM.PermittanceID 相同

即 RmPermittanceIdList_1 包含工作类型为 (3,6,9,12) 且许可 ID 为 1 的员工

RmPerMittanceIdList_2 包含有工作类型的员工(3,6,9,129,许可 ID 为 2 ....继续

{我需要这些列表以备后用}

我尝试并采取的错误{当前上下文中不存在名称“em”}:

List<Employees> emps = from md in Program.modList 
                                   from em in Program.empList
                                   from emo in em.RmList
                                   where emo.EndDate > DateTime.Today
                                       && (emo.Worktype == 3 || emo.WorkType == 6
                                       || emo.WorkType == 9 || emo.WorkType == 12)
                                   group  o by emo.PermittanceID == md.ModId 
                                   into rm
                                   select new { id = em.ID, r = rm.ToList() };

提前致谢..

4

0 回答 0