Допустим, я хочу обновить свою запись в БД для someModel.
[HttpPut("{id}")]
public async Task<ActionResult<SomeModel>> EditsomeModel(int id, [FromBody] SomeModel modelFromBody)
{
//Get excisting model by id.
var updatedModel = await _context.DBTable.FindAsync(id);
//Update it with values from request body ?
updatedModel.SomeParameters = modelFromBody.SomeParameters
_context.Entry(updatedModel).State = EntityState.Modified;
_context.DBTable.Update(updatedModel);
_context.SaveChanges();
return updatedModel;
}
Но проблема в том, что модель может иметь больше параметров, а не только те, которые отправлены по запросу PUT в почтальоне. Это может иметь param3, param4, et c ..
И modelFromBody устанавливает их как Null (или другое значение по умолчанию). Как правильно сопоставить эти два объекта? Таким образом, он только обновляет те параметры, которые были установлены в запросе PUT
Какую концепцию я ищу здесь?
Редактировать:
Нашел именно то, что мне нужно в документации. Но, к сожалению, это не показывает, как заставить Editcenar ios работать.