public async Task <CompleteShape> GetCompleteShape(int pid, int id) { CompleteShape completeShape = new CompleteShape(); List <PointDTO> pointDTOs = new List <PointDTO>(); Result result = new Result(); Shapes shapes = await context.Shapes.Include(S => S.Point).Include(S => S.Result).FirstOrDefaultAsync(S => S.Id == id); if (shapes != null) { foreach (var r in shapes.Result) { if (r.ProjectId == pid) { result = r; break; } } foreach (var pnt in shapes.Point) { pointDTOs.Add(mapper.Map <PointDTO>(pnt)); } } completeShape = new CompleteShape(mapper.Map <ShapesDTO>(shapes), pointDTOs, mapper.Map <ResultsDTO>(result)); return(completeShape); }
public async Task <List <CompleteShape> > GetCompleteShapes(int pid) { List <CompleteShape> completeShapes = new List <CompleteShape>(); CompleteShape completeShape = new CompleteShape(); List <PointDTO> pointDTOs = new List <PointDTO>(); Result result = new Result(); Projects p = await context.Projects.Include(pr => pr.ProjectShapeConn).FirstOrDefaultAsync(pr => pr.Id == pid); foreach (var item in p.ProjectShapeConn) { Shapes shapes = await context.Shapes.Include(S => S.Point).Include(S => S.Result).FirstOrDefaultAsync(S => S.Id == item.ShapeId); foreach (var r in shapes.Result) { if (r.ProjectId == pid) { result = r; break; } } foreach (var pnt in shapes.Point) { pointDTOs.Add(mapper.Map <PointDTO>(pnt)); } completeShape = new CompleteShape(mapper.Map <ShapesDTO>(shapes), pointDTOs, mapper.Map <ResultsDTO>(result)); pointDTOs = new List <PointDTO>(); completeShapes.Add(completeShape); } return(completeShapes); }