Действие Изменить не обновляет детали базы данных ASP.NET MVC - PullRequest
0 голосов
/ 30 сентября 2019

"КОД 01: форма обновления данных выполняет проверку корректно, но не обновляет записи в таблице."

"Есть аналогичный код, который я использовал в качестве примера, это" КОД 02 "этот код работает, но другой не работает .... "

" Я сделал соответственно КОДУ 02, но КОД 01 не работает "

@ * КОД 01 * @

 public ActionResult Edit(Film F)
        {

            if (ModelState.IsValid) {
                var item3 = db.Films.Where(x => x.Id == F.Id).First();
                item3.Title = F.Title;
                item3.Director = F.Director;
                item3.Actor = F.Actor;
                item3.Year = F.Year;
                item3.Budget = F.Budget;
                ModelState.Clear();
                db.SaveChanges();
                ViewBag.alert = "Your data is updated";
            }
                return View(F);
        }

@ * КОД 02 * @

public ActionResult Edit(Film E) {

            var item3 = db.Films.Where(e=> e.Id==E.Id).First();
            item3.Title = E.Title;
            item3.Director = E.Director;
            ViewBag.alert = "Data is success";
            db.SaveChanges();
            return View();
        }

КОД 01 не обновляет данные, но КОД 02 обновляет их

1 Ответ

1 голос
/ 30 сентября 2019

Кажется, что вы не занимаетесь определением класса «Фильм», который вы передаете в функцию редактирования. Если ваша модель не определена как действительная, это означает, что в вашем классе есть что-то, что определено неправильно или не определено.

Примером этого может быть то, что у вас есть бюджет, который вы указали как двойной(2000.30), когда ваш класс определяет это как целое число, или заголовок или актер не определены, если он не имеет обнуляемого типа, ИЛИ у вас есть аннотации данных в вашем классе, ограничивающие его, и эти критерии не выполняются.

см. ModelState.IsValid вопрос здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...