public List <TicketEntity> GetList(string deptname, string[] units, string dutyperson, string category, string status, bool includecode, string keyword, int pagesize, int pageindex, out int total, string ticketStr) { var db = new TicketContext(); DataTable dt; switch (ticketStr) { case "红雁池": dt = db.HyGetList(deptname, units, dutyperson, category, status, includecode, pagesize, pageindex, out total); break; default: dt = db.GetList(deptname, units, dutyperson, category, status, includecode, keyword, pagesize, pageindex, out total); break; } var result = new List <TicketEntity>(); if (dt == null && dt.Rows.Count == 0) { return(result); } foreach (DataRow item in dt.Rows) { var entity = new TicketEntity() { TicketId = item.Field <string>("gzpid"), TicketCode = item.Field <string>("gzpbh"), Unit = item.Field <string>("jz"), Category = item.Field <string>("category"), DutyPerson = item.Field <string>("pergzfzr"), DutyPerson2 = item.Field <string>("pergzfzrx"), StartTime = item.Field <DateTime?>("xkgzdate"), Content = item.Field <string>("gznr"), ApprovePerson = item.Field <string>("perxkgzxkr"), EndTime = item.Field <DateTime?>("pzjsdate"), EndTime2 = item.Field <DateTime?>("yqdate"), TicketStatus = item.Field <string>("gzpstatus"), DeptName = item.Field <string>("bz"), WorkMate = item.Field <string>("cy"), Place = item.Field <string>("gzdd") }; result.Add(entity); } //var faultids = result.Select(x => x.FaultId).ToList(); //IRepository rep = new RepositoryFactory().BaseRepository(); //var query = from q in rep.IQueryable<FaultRelationEntity>() // where faultids.Contains(q.FaultId) // select q.FaultId; //var allocated = query.ToList(); //result.ForEach(x => x.Allocated = allocated.Any(y => y == x.FaultId)); return(result); }