public IActionResult ModifyClientData(int clientId, ClientDTO modified) { Client modifying = _context.Clients .SingleOrDefault(c => c.Id == clientId); if (modifying == null) { return(BadRequest(new { message = "Klientas šiuo ID neregistruotas." })); } // POST metodu pateikti duomenys privalo sutapti su URL adrese esančiu kliento ID. if (modified.Id != clientId) { return(BadRequest(new { message = "Blogai pateikti kliento duomenys." })); } _context.Entry(modifying).CurrentValues.SetValues(modified); // Pereinama pro visas reikšmes kurios yra null ir pažymėtos kaip pakeistos tada tos reikšmės yra pažymimos kaip nepakeistos, kad neįrašytų null reikšmių į DB. // Šitas leidžia POST metodu siųsti tik Id ir norimą pakeisti reikšmę, todėl nereikia rūpintis apie kitas. foreach (var property in _context.Entry(modifying).Properties.Where(c => c.CurrentValue == null && c.IsModified)) { property.IsModified = false; } // Atnaujinamas UpdatedAt į dabartinę datą. // Dėl tvarkos šito reiktų kiekvienai keičiamai lentelėj, kurioj tik yra UpdatedAt atributas. modifying.UpdatedAt = DateTime.Now; _context.SaveChanges(); return(Ok(modifying)); }
public async Task <IActionResult> PutBookstoreOrder(int id, BookstoreOrder bookstoreOrder) { if (id != bookstoreOrder.Id) { return(BadRequest()); } _context.Entry(bookstoreOrder).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!BookstoreOrderExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public ActionResult Edit([Bind(Include = "Id,Description")] BookVM book) { if (ModelState.IsValid) { db.Entry(book).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(book)); }
public void UpdateBook(VMBook vmbook) { var x = (from y in db.Books where y.BookID == vmbook.BookID select y).FirstOrDefault(); if (x != null) { db.Entry(x).CurrentValues.SetValues(vmbook); db.SaveChanges(); } }
public async Task <ActionResult> Edit([Bind(Include = "ItemID,Name,DisplayName,Price,ItemCategoryID")] Item item) { if (ModelState.IsValid) { db.Entry(item).State = EntityState.Modified; await db.SaveChangesAsync(); return(RedirectToAction("Index")); } ViewBag.ItemCategoryID = new SelectList(db.ItemCategories, "ItemCategoryID", "Name", item.ItemCategoryID); return(View(item)); }
public async Task <ActionResult> Edit([Bind(Include = "CartID,CreateTimestamp,OrderID")] Cart cart) { if (ModelState.IsValid) { db.Entry(cart).State = EntityState.Modified; await db.SaveChangesAsync(); return(RedirectToAction("Index")); } ViewBag.OrderID = new SelectList(db.Orders, "OrderID", "OrderID", cart.OrderID); return(View(cart)); }
public void UpdateUser(VMUser vmuser) { var x = (from y in db.Users where y.UserID == vmuser.UserID select y).FirstOrDefault(); if (x != null) { db.Entry(x).CurrentValues.SetValues(vmuser); db.SaveChanges(); } }
public async Task <IActionResult> DeleteConfirmed(int id) { try { Book bookToDelete = new Book { BookID = id }; db.Entry(bookToDelete).State = EntityState.Deleted; await db.SaveChangesAsync(); TempData["Message"] = "Usunięto książkę"; return(RedirectToAction(nameof(Index))); } catch (DbUpdateException) { return(RedirectToAction("Delete", new { id = id, saveChangesError = true })); } }
public T Update(T item) { try { context.Entry(item).State = Microsoft.EntityFrameworkCore.EntityState.Modified; if (context.SaveChanges() > 0) { return(item); } else { throw new Exception("Update not performed"); } } catch (Exception ex) { Console.WriteLine(ex.Message); return(null); } }
public IActionResult UpdateQuantity(int cartId, int quantity) { // string cartJson = HttpContext.Session.GetString("CartList"); Cart item = _context.Cart.Find(cartId); if (quantity == 0) { _context.Cart.Remove(item); _context.SaveChanges(); } if (item != null && quantity >= 1) { item.Quantity = quantity; _context.Entry(item).State = EntityState.Modified; _context.Update(item); _context.SaveChanges(); } return(RedirectToAction("Cart", item)); }