Нет, там нет такой встроенной функциональности - вы должны создать свой собственный.Очень распространен, например, такой подход, как:
public void SaveOrUpdate(MyEntity entity)
{
if (entity.Id == 0)
{
context.MyEntities.AddObject(entity);
}
else
{
context.MyEntities.Attach(entity);
context.ObjectStateManager.ChangeObjectState(entity, EntityState.Modified);
}
// You can call SaveChanges here or you can call it separately after multiple changes
}
Это пример работы с отсоединенным объектом, который автоматически генерирует Id
в базе данных (IDENTITY
).Идентификатор по умолчанию для новой сущности всегда равен 0, поскольку при сохранении изменений будет назначено реальное значение.