public FoodContent(FoodContentViewModel model) { InitializeComponent(); _model = model; BindingContext = _model; }
private FoodContentViewModel GetViewModel(string tagName) { var assembly = IntrospectionExtensions.GetTypeInfo(typeof(WelcomePage)).Assembly; Stream stream = assembly.GetManifestResourceStream("FoodAI.ai-food-database.csv"); string data; using (var reader = new StreamReader(stream)) { data = reader.ReadToEnd(); } string[] datainLines = data.Split(Environment.NewLine.ToCharArray()); int lineIndex; switch (tagName) { case "Fish": lineIndex = 1; break; case "Bread": lineIndex = 2; break; case "Rice": lineIndex = 3; break; case "Eba": lineIndex = 4; break; case "Chicken": lineIndex = 5; break; default: throw new Exception("Invalid tagname"); } string[] foodData = datainLines[lineIndex].Split(','); var model = new FoodContentViewModel { TagName = tagName, EnergyInKcal = Convert.ToDouble(foodData[1]), WaterInGram = Convert.ToDouble(foodData[2]), ProteinInGram = Convert.ToDouble(foodData[3]), FatInGram = Convert.ToDouble(foodData[4]), CarbohydrateInGram = Convert.ToDouble(foodData[5]), FibreInGram = Convert.ToDouble(foodData[6]), AshInGram = Convert.ToDouble(foodData[7]), CalciumInMilGram = Convert.ToDouble(foodData[8]), IronInMilGram = Convert.ToDouble(foodData[9]), MagnesiumInMilGram = Convert.ToDouble(foodData[10]), PhosphorusInMilGram = Convert.ToDouble(foodData[11]), PotassiumInMilGram = Convert.ToDouble(foodData[12]), SodiumInMilGram = Convert.ToDouble(foodData[13]), ZincInMilGram = Convert.ToDouble(foodData[14]), CopperInMilGram = Convert.ToDouble(foodData[15]), ManganeseInMilGram = Convert.ToDouble(foodData[16]), DietSuggestion = foodData[17] }; return(model); }