У меня есть код для изменения данных объекта, но вместо обновления информации текущего объекта, он создаёт новый объект. Как реализовать именно обновление переданного объекта в таблице?
public async Task<IActionResult> EditBook(int? id)
{
if (id != null)
{
var book = db.Books
.Include(c => c.User)
.AsNoTracking()
.Single(i => id == i.m_ID);
if (book != null)
return View(book);
}
return NotFound();
}
[HttpPost]
public async Task<IActionResult> EditBook(Book book)
{
if (count_of_books(book) < 4)
{
db.Books.UpdateRange(book);
await db.SaveChangesAsync();
return RedirectToAction("Index");
}
else
{
return Redirect($"ErrUserHaveBooksOverLimit?id={book.UserID}");
}
}