ASP.NET Core - курс для начинающих - база данных не сохраняет изменения в базе данных при перенаправлении бритвенных страниц - PullRequest
0 голосов
/ 25 октября 2018

Я прохожу курс Виртуальная академия Microsoft .Я нахожусь в классе CRUD.

foreach file Когда страница создания бритвы перенаправляет на страницу indexModel, у БД есть клиенты;поэтому, когда foreach пытается заставить клиентов показать, что он работает, но когда пытаются удалить, у него нет клиента для удаления.Когда я попытался удалить клиента, веб-приложение выдает:

Ссылка на объект не установлена ​​на экземпляр объекта.

Я отладил это и нашел корень ошибки.WebApp создает клиента и перенаправляет на IndexModel, IndexModel список клиентов;но когда я попытался удалить клиента, в списке клиентов в БД не было ни одного клиента.Как вы можете видеть на скриншотах.

Create has the customer

Но у IndexModel нет Клиентов в БД.index doesn't have

Я не понимаю, почему DB не сохраняет изменения правильно;и я не знаю, как indexModel показывает список клиентов, даже без клиентов на БД.(на изображении выше показан шаг отладки, я видел все этапы, и в данный момент у меня есть клиенты на IndexModel db).

Я много искал в Интернете и использовал Форум виртуальной академии Microsoft , но я не исправил это.В основном ошибка на foreach (теоретически).Вы можете мне помочь?

Обработчик

    [Route("delete/{id:int}")]
    public async Task<IActionResult> OnPostDeleteASync(int? id)
    {
        // if (!ModelState.IsValid) return Page();
        var removeCustomer = await _db.Customers.FindAsync(id);
        if (removeCustomer != null)
        {
            _db.Customers.Remove(removeCustomer);
            await _db.SaveChangesAsync();
        }

        return RedirectToPage("/index");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...