У меня есть основная сущность, и внутри этой основной сущности у меня есть дочерняя сущность (отношения один ко многим). При обновлении моей основной сущности я хочу новую дочернюю сущность в существующем списке дочерних сущностей для основной сущности.
Class MainEntity
{
List<ChildEntity> childs {get;set;}
}
void MainEntityUpdate(updatedMainEntity)
{
1 - exitingMainEntity = db.getCurrent();
2 - updatedMainEntity.childs = existingMainEntity.childs;
3 - updatedMainEntity.childs.Add(newChild);
}
в этом Сценарий при добавлении нового потомка два дубликата потомков добавляются в БД. Я лениво загружаю сущность из БД. Но если перебрать дочернюю коллекцию на шаге - 2
2 - updatedMainEntity.childs = existingMainEntity.childs.toList();
В этом случае добавляется только один дочерний элемент на шаге -3.
В чем причина такого странного поведения?