Вычесть значения в BD из MVC - PullRequest
0 голосов
/ 04 июня 2019

У меня есть индекс MVC для перечисления данных моей БД из хранимой процедуры, и есть 1 столбец с именем «часы», поэтому в форме редактирования я хочу вычесть значение, которое я вставил, со значением из БД.Как я могу сделать это, чтобы показать в индексе?спасибо

это моя модель:

 public class ExtrajobsViewModel
    {
        public int ExtraJobsID { get; set; }
        public int UserID { get; set; }
        public int FunctionScopeID { get; set; }
        public string Description { get; set; }
        [DisplayFormat(DataFormatString = "{0:dd/MMM/yyyy}")]
        public Nullable<System.DateTime> Day { get; set; }
        public Nullable<decimal> Hours { get; set; }

и мой контроллер редактирования modalview:

public ActionResult _CreateOrEdit_IndexRegistoTC(int? id)
        {

            if (id == null || id == 0)
            {
                return View();
            }
            var FunctionName = _context.TBL_UserFunction.Where(u => u.Name == "Extra-jobs").FirstOrDefault().Name;
            var item2 = _context.SP_ExtraJobsRel(FunctionName).Where(m => m.ExtraJobsID == id).FirstOrDefault();

            var item = _context.TBL_ExtraJobs.Find(id);

            if (item2 == null)
            {

                return HttpNotFound();
            }

            ExtrajobsViewModel model = new ExtrajobsViewModel();
            model.ExtraJobsID = item.ExtraJobsID;
            model.FunctionScopeID = item.FunctionScopeID;
            model.Travel_Consultant = item2.Username;
            model.Scope1UserFunction = item2.functionscope1;
            model.Scope2UserFunctionScope = item2.functionscope2;
            model.Description = item2.Description;
            model.Day = DateTime.UtcNow;
            model.Hours = item2.Hours;
            return View(model);
        }

        [HttpPost]
        [ValidateAntiForgeryToken]
        public ActionResult _CreateOrEdit_IndexRegistoTC(ExtrajobsViewModel model)
        {

            var userID = ((SessionModel)Session["SessionModel"]).UserID; // get current user id
            TBL_ExtraJobs item = _context.TBL_ExtraJobs.Find(model.ExtraJobsID);
            _context.Entry(item).State = EntityState.Modified;
            item.FunctionScopeID = model.FunctionScopeID;
            item.Description = model.Description;
            item.Hours = model.Hours;
            item.Day = model.Day;
            item.LastUpdate = DateTime.UtcNow;
            item.LastUpdateBy = userID;
            //GetViewBags(model.Status_Coordinator);
            _context.SaveChanges();
            return RedirectToAction("IndexValidacao");
        }

и мой вид для отображения часов:

<div class="form-group">
                @Html.LabelFor(m => m.Hours, new { @class = "control-label col-sm-3" })
                <div class="col-sm-9">
                    @Html.EditorFor(model => model.Hours, new { htmlAttributes = new { @class = "form-control input" } })
                    @Html.ValidationMessageFor(model => model.Hours, "", new { @class = "text-danger" })
                </div>
            </div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...