private RDI getRDICategory(int age, String gender, bool pregnant, bool lactating) { String ageRange; //check pregnant and lactating first as they use different ranges if (pregnant || lactating) { if (age >= 19) { ageRange = "19-50"; } else { ageRange = "14-18"; } } else { if (age > 70) { ageRange = "70+"; } else if (age > 50) { ageRange = "51-70"; } else if (age > 30) { ageRange = "31-50"; } else if (age > 18) { ageRange = "19-30"; } else if (age > 13) { ageRange = "14-18"; } else if (age > 8) { ageRange = "9-13"; } else if (age > 3) { ageRange = "4-8"; } else { ageRange = "1-3"; } } //if both pregnant and lactating, use the lactating RDI if (pregnant && lactating) { pregnant = false; } //get RDI category from age and gender RDI temp = RDIs.Where(r => r.AgeRange == ageRange && r.Gender == gender && r.Pregnant == pregnant && r.Lactating == lactating).ToList()[0]; //multiply by number of days selected return(new RDI() { Water = temp.Water * ((StopDate.Date - StartDate.Date).Days + 1), Enegry = temp.Enegry * ((StopDate.Date - StartDate.Date).Days + 1), EnegryNIP = temp.EnegryNIP * ((StopDate.Date - StartDate.Date).Days + 1), Protein = temp.Protein * ((StopDate.Date - StartDate.Date).Days + 1), Fat = temp.Fat * ((StopDate.Date - StartDate.Date).Days + 1), Carbohydrates = temp.Carbohydrates * ((StopDate.Date - StartDate.Date).Days + 1), DietaryFibre = temp.DietaryFibre * ((StopDate.Date - StartDate.Date).Days + 1), Sugars = temp.Sugars * ((StopDate.Date - StartDate.Date).Days + 1), Starch = temp.Starch * ((StopDate.Date - StartDate.Date).Days + 1), SFA = temp.SFA * ((StopDate.Date - StartDate.Date).Days + 1), MUFA = temp.MUFA * ((StopDate.Date - StartDate.Date).Days + 1), PUFA = temp.PUFA * ((StopDate.Date - StartDate.Date).Days + 1), AlphaLinolenicAcid = temp.AlphaLinolenicAcid * ((StopDate.Date - StartDate.Date).Days + 1), LinoleicAcid = temp.LinoleicAcid * ((StopDate.Date - StartDate.Date).Days + 1), Cholesterol = temp.Cholesterol * ((StopDate.Date - StartDate.Date).Days + 1), Sodium = temp.Sodium * ((StopDate.Date - StartDate.Date).Days + 1), Iodine = temp.Iodine * ((StopDate.Date - StartDate.Date).Days + 1), Potassium = temp.Potassium * ((StopDate.Date - StartDate.Date).Days + 1), Phosphorus = temp.Phosphorus * ((StopDate.Date - StartDate.Date).Days + 1), Calcium = temp.Calcium * ((StopDate.Date - StartDate.Date).Days + 1), Iron = temp.Iron * ((StopDate.Date - StartDate.Date).Days + 1), Zinc = temp.Zinc * ((StopDate.Date - StartDate.Date).Days + 1), Selenium = temp.Selenium * ((StopDate.Date - StartDate.Date).Days + 1), VitaminA = temp.VitaminA * ((StopDate.Date - StartDate.Date).Days + 1), BetaCarotene = temp.BetaCarotene * ((StopDate.Date - StartDate.Date).Days + 1), Thiamin = temp.Thiamin * ((StopDate.Date - StartDate.Date).Days + 1), Riboflavin = temp.Riboflavin * ((StopDate.Date - StartDate.Date).Days + 1), Niacin = temp.Niacin * ((StopDate.Date - StartDate.Date).Days + 1), VitaminB6 = temp.VitaminB6 * ((StopDate.Date - StartDate.Date).Days + 1), VitaminB12 = temp.VitaminB12 * ((StopDate.Date - StartDate.Date).Days + 1), DietaryFolate = temp.DietaryFolate * ((StopDate.Date - StartDate.Date).Days + 1), VitaminC = temp.VitaminC * ((StopDate.Date - StartDate.Date).Days + 1), VitaminD = temp.VitaminD * ((StopDate.Date - StartDate.Date).Days + 1), VitaminE = temp.VitaminE * ((StopDate.Date - StartDate.Date).Days + 1), Alcohol = temp.Alcohol * ((StopDate.Date - StartDate.Date).Days + 1) }); }
private RDI getRDICategory(int age, String gender) { String ageRange; if (age > 70) { ageRange = "70+"; } else if (age > 50) { ageRange = "51-70"; } else if (age > 30) { ageRange = "31-50"; } else if (age > 18) { ageRange = "19-30"; } else if (age > 13) { ageRange = "14-18"; } else if (age > 8) { ageRange = "9-13"; } else if (age > 3) { ageRange = "4-8"; } else { ageRange = "1-3"; } //get RDI category from age and gender RDI temp = RDIs.Where(r => r.AgeRange == ageRange && r.Gender == gender).ToList()[0]; //multiply by number of days selected return(new RDI() { Water = temp.Water, DietaryFibre = temp.DietaryFibre, Sugars = temp.Sugars, Starch = temp.Starch, SFA = temp.SFA, MUFA = temp.MUFA, PUFA = temp.PUFA, AlphaLinolenicAcid = temp.AlphaLinolenicAcid, LinoleicAcid = temp.LinoleicAcid, Cholesterol = temp.Cholesterol, Sodium = temp.Sodium, Iodine = temp.Iodine, Potassium = temp.Potassium, Phosphorus = temp.Phosphorus, Calcium = temp.Calcium, Iron = temp.Iron, Zinc = temp.Zinc, Selenium = temp.Selenium, VitaminA = temp.VitaminA, BetaCarotene = temp.BetaCarotene, Thiamin = temp.Thiamin, Riboflavin = temp.Riboflavin, Niacin = temp.Niacin, VitaminB6 = temp.VitaminB6, VitaminB12 = temp.VitaminB12, DietaryFolate = temp.DietaryFolate, VitaminC = temp.VitaminC, VitaminD = temp.VitaminD, VitaminE = temp.VitaminE, Alcohol = temp.Alcohol }); }