public TerminationRequest Select(string id, bool all = false) { using (var db = new BillingDbContext()) { if (all) { var sql1 = from o in db.ServiceRequests.OfType <TerminationRequest>() .Include(o => o.RequestInfo).Include(o => o.RequestInfo.Terminations) .Include(o => o.Routing).Include(o => o.Routing.Terminations) .Where(o => o.Id == id && o.State != EServiceRequestState.DELETED) select o; var req = sql1.SingleOrDefault(); if (req != null && req.Routing.Terminations.Count > 0) { foreach (var ti in req.Routing.Terminations) { TerminationItem ti1 = ti; var sql2 = from t in db.Terminations.Include(t => t.TerminatedContract) where t.No == ti1.No select t; ti1 = sql2.SingleOrDefault(); } } return(req); } var sql = from o in db.ServiceRequests.OfType <TerminationRequest>() .Include(o => o.RequestInfo) .Where(o => o.Id == id && o.State != EServiceRequestState.DELETED) select o; return(sql.SingleOrDefault()); } }
public List <TerminationItem> ToTerminations(List <TerminationItemDTO> list, bool all) { var os = new List <TerminationItem>(); foreach (var vo in list) { var o = new TerminationItem(); ClassCopier.Instance.Copy(vo, o); if (all) { if (vo.TerminatedContract != null) { o.TerminatedContract = ToTerminatedContract(vo.TerminatedContract); } o.RejectionReason = vo.RejectionReason; } os.Add(o); } return(os); }