Обновление 1-1 Entity Framework Core - PullRequest
0 голосов
/ 19 октября 2019
    public async Task SaveAsync(Cliente cliente)
    {
        if (cliente.Id == Guid.Empty)
        {
            _cadastroContext.Clientes.Add(cliente);
        }
        else
        {
            _cadastroContext.Clientes.Update(cliente);
        }

        await _cadastroContext.SaveChangesAsync();
    }

Класс Cliente имеет отношение 1-1 к классу Conta, когда я сохраняю новую запись, оба класса сохраняются одновременно, но при переходе к обновлению он не обновляется до класса Conta.

После выполнения команды Update свойства класса Conta совпадают со свойствами в базе данных и не совпадают с отправленными.

Как обновить два составных класса?

1 Ответ

1 голос
/ 19 октября 2019

Вам необходимо include объекты объектов перед обновлением объекта клиентов.

public async Task SaveAsync(Cliente cliente) 
{
    ... code ommited for brevity
    else 
    {
        var savedCliente = _cadastroContext.Include(c => c.Conta).FirstOrDefault(c = c.Id == cliente.Id);
        savedCliente = cliente;

        _cadastroContext.Update(savedCliente);
        await _cadastroContext.SaveChangesAsync()
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...