Обновление пользовательских данных возвращает нулевое исключение в EF ASP.NET Core 2.1 - PullRequest
0 голосов
/ 21 июня 2019

Невозможно получить доступ к свойству ApplicationUser BizName, так как ApplicationUser всегда имеет значение null при попытке обновить метод редактирования сообщения. Нулевое исключение: @ line ApplcationUser.BusinessName;

Я пытался

var userFromDb = _db.ApplicationUser.Include(u => u.Customer).Where(u => u.Id == id).FirstOrDefault();

и

var userFromDb = _db.Customer.Include(u => u.ApplicationUser).Where(u => u.CustomerUserId == id).FirstOrDefault();

Контроллер

[HttpPost, ActionName("Edit")]
[ValidateAntiForgeryToken]
public async Task<IActionResult> EditUser(string id, ApplicationUser applicationUser)
{
        if (id != applicationUser.Id)
        {
            return NotFound();
        }

        if (ModelState.IsValid)
        {
            var userFromDb = _db.ApplicationUser.Include(u => u.Customer).Where(u => u.Id == id).FirstOrDefault();
            ....
            _db.SaveChanges();
            return RedirectToAction(nameof(Index));
        }

        return View(applicationUser);
}

Модель

public class Customer
{
    [Key, ForeignKey("ApplicationUser")]
    public string CustomerUserId { get; set; }
    public virtual ApplicationUser ApplicationUser { get; set; }

    public string BizName
    {
        get
        {
            return ApplicationUser.BusinessName;
        }
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...