public async Task SaveAsync(Cliente cliente)
{
if (cliente.Id == Guid.Empty)
{
_cadastroContext.Clientes.Add(cliente);
}
else
{
_cadastroContext.Clientes.Update(cliente);
}
await _cadastroContext.SaveChangesAsync();
}
Cliente类与Conta类具有1-1的关系,当我保存新记录时,两个类将同时保存,但是当我更新时,它不会更新为Conta类。
执行Update命令后,Conta类的属性与数据库中的属性相同,而与发送的属性不同。
如何更新两个复合类?
答案 0 :(得分:1)
在更新clientes对象之前,您需要
include
conta对象。
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()
}