J'utilise le code ci-dessous pour mettre à jour une colonne "Quantité" dans ma table mais je pense que parce que Select et Update est dans une boucle foreach, elle met à jour tous les produits. En outre, les produits sont également mis à jour lorsque la page est rechargée et le montant est augmenté en fonction du nombre de clics effectués par l'utilisateur sur le bouton d'ajout. Par exemple. Cliquez deux fois sur le bouton Ajouter deux fois les incréments de quantité.Mise à jour de la quantité via SQL
J'ai idéalement besoin de pouvoir utiliser l'ItemID en dehors de la boucle foreach mais je ne peux pas.
Des suggestions?
code:
foreach (UserItem ItemID in (List<UserItem>)Session["UserSession"])
{
ConclusionPage.InsertCommand = "IF EXISTS (SELECT ItemID FROM tblUserItems WHERE UserID='@CurrentUser' AND ItemID='@ItemID') UPDATE tblUserItems SET Quantity = Quantity+1 WHERE (UserID = '@CurrentUser') AND (ItemID = '@ItemID')";
ConclusionPage.Insert();
}
duplication possible de [Utilisation d'une variable d'une boucle Foreach] (http://stackoverflow.com/questions/4369050/using-a-variable-from-a-foreach-loop) – Hogan
Quand la quantité doit-elle être mise à jour? –
@Chuck La quantité doit être mise à jour par exemple si l'utilisateur ajoute un article mais que cet article a déjà été ajouté alors la quantité doit être incrémentée de – user527330