同じIDのアイテムが既にデータベースに格納されているかどうかを確認したい場合は、そのアイテムの数量を更新することができます。私が をforeachループで持っているという事実は、各アイテムの数量を更新します。Foreachループの変数を使用する
私はループの外にコマンドを置いたとき、コンテキストではないので「ItemID」を使用することができませんが、とにかくこれを回避できますか?
はIF EXISTS
が冗長である
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();
}