コード例 #1
0
        public override void ProcessRow(IList <object> row)
        {
            bool idExists = int.TryParse((string)row[IdIndex], out int id);

            if (idExists == false)
            {
                id = 0;
            }

            AnalysisModel newAnalysisModel = new AnalysisModel
            {
                Id        = id,
                ProductId = Convert.ToInt32(row[ProductIdIndex]),
                Nutrients = new List <AnalysisNutrientModel>()
            };

            foreach (var key in NutrientMappings.Keys)
            {
                AnalysisNutrientModel newNutrientRecord = CreateAnalysisNutrientRecord(row, newAnalysisModel, key);
                newAnalysisModel.Nutrients.Add(newNutrientRecord);
            }
            GlobalConfig.Connection.CreateAnalysis(newAnalysisModel);

            IList <object> updateRow = new object[]
            {
                newAnalysisModel.Id,
            };

            UpdateValues.Add(updateRow);
        }
コード例 #2
0
        private AnalysisNutrientModel CreateAnalysisNutrientRecord(IList <object> sample, AnalysisModel newSampleModel, string key)
        {
            int index = NutrientMappings[key];
            AnalysisNutrientModel newNutrientRecord = new AnalysisNutrientModel();

            newNutrientRecord.Amount = Convert.ToDecimal((string)sample[index]);

            newNutrientRecord.NutrientId = Convert.ToInt32(key);

            return(newNutrientRecord);
        }