J'ai un bogue très bizarre, qui semble se produire uniquement sur un élément particulier que j'essaie de mettre à jour dans la base de données, en utilisant le framework d'entité.EF ne met pas à jour un objet particulier sur SaveChanges
Voici mon code:
var shoppingCartItem = GetShoppingCartItemById(shoppingCartItemId);
shoppingCartItem.Quantity = newQuantity;
_context.SaveChanges();
et c'est la méthode qui obtient l'élément de la DB avant updateing:
public ShoppingCartItem GetShoppingCartItemById(int shoppingCartItemId)
{
if (shoppingCartItemId == 0)
return null;
var query = from sci in _context.ShoppingCartItems
where sci.ShoppingCartItemId == shoppingCartItemId
select sci;
var shoppingCartItem = query.SingleOrDefault();
return shoppingCartItem;
}
Ce code fonctionne sur certains points, mais ne pas un particulier que je suis en train de tester maintenant. Si je vérifie l'état de l'objet (en utilisant _context.ObjectStateManager.GetObjectStateEntry (shoppingCartItem)) après avoir changé la propriété, la quantité est inchangée :(
Est-ce que cela arrive à l'un d'entre vous?
Etes-vous sûr qu'une nouvelle valeur de quantité est différente? –