Ich bin mir nicht sicher, ob es den gesamten Inhalt des Cookies löscht, oder einfach nicht das existierende Cookie vom Benutzer abruft, hinzufügt und zurückgibt. HierIn den Warenkorb Funktionalität mit Cookies löscht alle Inhalte?
ist der Code:
[Authorize]
public ActionResult AddToCart(int productId, int quantity)
{
//If the cart cookie doesn't exist, create it.
if (Request.Cookies["cart"] == null)
{
Response.Cookies.Add(new HttpCookie("cart"));
}
//If the cart already has this item, add the amount to it.
if (Request.Cookies["cart"].Values[productId.ToString()] != null)
{
int tmpAmount = Convert.ToInt32(Request.Cookies["cart"].Values[productId.ToString()]);
Response.Cookies["cart"].Values.Add(productId.ToString(), (quantity + tmpAmount).ToString());
}
else
{
Response.Cookies["cart"].Values.Add(productId.ToString(), quantity.ToString());
}
return RedirectToAction("Index");
}
ich Stützpunkte verwendet habe, und kann bestätigen, dass, wenn ich einen Artikel im Cookie haben, und dann wieder eine neue Position hinzufügen, der Code ausgeführt wird nicht korrekt Response.Cookies.Add(new HttpCookie("cart"));
ausführt . Also glaube ich nicht, dass ich einen neuen Keks kreiere.
In der Tat, ich versuche, den gleichen Artikel, den ich richtig sehe, dass der Betrag für diesen Artikel erhöht wird, anstatt es zweimal aufgeführt.
Ich denke, mein Problem liegt darin, in den vorhandenen Cookie zu schreiben?
Erwartetes Ergebnis nach einem weiteren Elemente hinzu:
Siehe zwei Artikel im Warenkorb Seite.
Tatsächliches Ergebnis:
Sehen Sie nur den neuesten Artikel, den ich in der Korb Seite hinzugefügt.
Irgendwelche eklatanten Fehler? Dies ist mein erster Ausflug in Cookies.
Dieser den Trick, werde ich meine eigene Frage mit dem Code beantworte ich verwenden, um dieses Problem zu beheben. –