Esempio n. 1
0
        public async Task <IActionResult> Edit(int id, [Bind("MtrReadingId,AccountId,MeterReadingDateTime,MeterReadValue")] MtrReading mtrReading)
        {
            if (id != mtrReading.MtrReadingId)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(mtrReading);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!MtrReadingExists(mtrReading.MtrReadingId))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(mtrReading));
        }
Esempio n. 2
0
        public async Task <IActionResult> Create([Bind("MtrReadingId,AccountId,MeterReadingDateTime,MeterReadValue")] MtrReading mtrReading)
        {
            if (ModelState.IsValid)
            {
                _context.Add(mtrReading);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(mtrReading));
        }
Esempio n. 3
0
        public ActionResult ProcessFile(string Filename)
        {
            Console.WriteLine("**** Read in the CSV file *****");

            var path = @"C:\" + Filename;


            using (var reader = new StreamReader(path, Encoding.Default))
                using (var csv = new CsvReader(reader, System.Globalization.CultureInfo.CreateSpecificCulture("en-UK")))
                {
                    csv.Configuration.RegisterClassMap <MeterMap>();
                    var records = csv.GetRecords <MtrReading>().ToList();

                    foreach (var reading in records)
                    {
                        Console.WriteLine("Processing " + reading.AccountId);
                        //MtrReadingValidityCheck(reading.AccountId);
                        var meterReadingToAdd = new MtrReading()
                        {
                            AccountId            = reading.AccountId,
                            MeterReadingDateTime = reading.MeterReadingDateTime,
                            MeterReadValue       = reading.MeterReadValue
                        };


                        _context.MtrReadings.Add(meterReadingToAdd);
                        // _context.MtrReading.Add(meterReadingToAdd);

                        _context.SaveChanges();
                    }


                    var fileToAdd = new ProcessedFiles()
                    {
                        ProcessedFileName = Filename
                    };

                    _context.ProcessedFiles.Add(fileToAdd);
                    _context.SaveChanges();
                }


            return(View());
        }