Добавление значений в ASP.NET контроллер из столбца базы данных SQL server для конкретного пользователя
Моя проблема:
Мне нужно добавить "сверхурочные" за все предыдущие месяцы с начала года до выбранного месяца.
Моя таблица в sql server:
Овертайм : варчар(20)
Id | Login | Year | Month | Day | Overtime ---+-------+------+-------+-----+---------- 1 | MIPA | 2020 | 1 | 1 | 08:00 2 | MIPA | 2020 | 1 | 2 | 08:00 3 | MIPA | 2020 | 1 | 3 | 07:30 4 | MIPA | 2020 | 1 | 4 | 12:00 ... 30 | MIPA | 2020 | 1 | 30 | 04:00 ... 41 | MIPA | 2020 | 2 | 1 | 08:00 42 | MIPA | 2020 | 2 | 2 | 08:00 43 | MIPA | 2020 | 2 | 3 | 07:30 44 | MIPA | 2020 | 2 | 4 | 12:00 ... 52 | MIPA | 2020 | 2 | 25 | 04:00
//Итак, если пользователь выбрал март (3) и год: 2020(в выпадающем списке). Эта функция должна извлекать агрегированную информацию из столбца сверхурочные за предыдущие месяцы выбранного года. (то есть в Примере за январь (1) и февраль (2) и за 2020 год)
Контроллер:
[HttpPost] public async Task<ActionResult> PartialTableEcp() //change nothing { // Data is already extracted from other operations // So e.g. user enters chooses year: 2020 month: March (3) int numberMonth= 3; int numberYear= 2020; int numberOfDays= 31; // person identification by login var userName = _httpContextAccessor.HttpContext.User.Identity.Name; // retrieve all month records from the table, (i dont know it works) var existingRecords = _tableEcpContext.Karta .Where(x => x.Login == userName && x.Year == numberYear && x.Month == numberMonth-1) ////will mathematical calculation work here? .Select(i => new{ i.Overtime }).ToList(); and now there is a problem how to sum all these values .. preferably in HHH: mm format var thisValue = that this value would be written to the variable var; var viewModel = new ParentView { Model1 = karta }; return PartialView("_TableViewEcp", viewModel); //change nothing }
Модель:
public partial class Karta_Model { [Key] public int Id { get; set; } public string? Login { get; set; } public int Year { get; set; } public int Month{ get; set; } public int? DayOfMonth { get; set; } public string? Overtime { get; set; } } public partial class ParentView { public List<Karta_Model> Model1 { get; set; } }
Что я уже пробовал:
у кого-нибудь есть идея?
то, что я написал, находится наверху