Эти две сущности являются отношением один-ко-многим (строится на основе кода, свободно бегущего API).
public class Parent
{
public Parent()
{
this.Children = new List<Child>();
}
public int Id { get; set; }
public virtual ICollection<Child> Children { get; set; }
}
public class Child
{
public int Id { get; set; }
public int ParentId { get; set; }
public string Data { get; set; }
}
В моем контроллере WebApi у меня есть действия по созданию родительской сущности (которая работает нормально) и обновлению родительской сущности (которая имеет некоторые проблемы). Действие обновления выглядит так:
public void Update(UpdateParentModel model)
{
//what should be done here?
}
В настоящее время у меня есть две идеи:
Получить гусеничный родительский объект с именем
existing
поmodel.Id
и присвоению значения вmodel
один за другим к объекту. Это звучит глупо. И вmodel.Children
я не знаю, какой ребенок новый, какой ребенок изменен (или даже удален).Создайте новую родительскую сущность через
model
и прикрепите ее к DbContext и сохраните. Но как DbContext может узнать о состоянии детей (новое добавление / удаление / изменение)?
Как правильно реализовать эту функцию?