public RouteProblemDto getRouteProblemFromStrings(string supergroup, string group, string subgroup, string problemname) { try { RouteProblemDto result = new RouteProblemDto(); var dbSupergroup = dc.SuperGroups.Where(o => o.SuperGroupName == supergroup).First(); var dbGroup = dc.Groups.Where(o => o.GroupName == group).First(); var dbSubGroup = dc.SubGroups.Where(o => o.SubGroupName == subgroup).First(); var route = dc.Route.Where(o => o.SuperGroupId == dbSupergroup.SuperGroupId && o.GroupId == dbGroup.GroupId && o.SubGroupId == dbSubGroup.SubGroupId).First(); var PotentialProblems = dc.ProblemBase.Where(o => o.Name == problemname).ToList(); Problem tempProblem; Problem problemResult = null; foreach (var entity in PotentialProblems) { tempProblem = dc.Problem.Where(o => o.ProblemBaseId == entity.ProblemBaseId && o.RouteId == route.RouteId).FirstOrDefault(); if (tempProblem != null) { problemResult = tempProblem; } } result = getRouteProblemFromId(problemResult.ProblemBaseId); return(result); }catch (Exception e) { return(null); } }
public RouteProblemDto getRouteProblemFromId(int problemBaseId) { var tempProblem = dc.ProblemBase.Where(o => o.ProblemBaseId == problemBaseId).FirstOrDefault(); RouteProblemDto result = new RouteProblemDto(); var tempImage = dc.ProblemImage.Where(o => o.ProblemBaseId == problemBaseId).FirstOrDefault(); if (tempProblem != null) { if (tempImage != null) { result.EntryTypeId = tempProblem.EntryTypeId; result.Epidemiology = tempProblem.Epidemiology; result.ImageLink = dc.ListingFile.Where(o => o.ListingFileId == tempImage.ListingFileId).FirstOrDefault().FilePath.Substring(15); result.Information = tempProblem.Information; result.Morbidity = tempProblem.Morbidity; result.Name = tempProblem.Name; result.ProblemBaseId = tempProblem.ProblemBaseId; result.Symptoms = tempProblem.Symptoms; } else { result.EntryTypeId = tempProblem.EntryTypeId; result.Epidemiology = tempProblem.Epidemiology; result.ImageLink = "No_image_3x4.svg.png"; result.Information = tempProblem.Information; result.Morbidity = tempProblem.Morbidity; result.Name = tempProblem.Name; result.ProblemBaseId = tempProblem.ProblemBaseId; result.Symptoms = tempProblem.Symptoms; } return(result); } else { return(null); } }