Ich habe einen Cookie namens SurveyCookie. So erstellt:Ändern Sie einen Cookie-Wert eines bereits vorhandenen Cookies
var cookie = new HttpCookie("SurveyCookie");
cookie.Values["surveyPage"] = "1";
cookie.Values["surveyId"] = "1";
cookie.Values["surveyTitle"] = "Definietly not an NSA Survey....";
cookie.Values["lastVisit"] = DateTime.UtcNow.ToString();
cookie.Expires = DateTime.UtcNow.AddDays(30);
Response.Cookies.Add(cookie);
Was funktioniert gut. Jetzt kommt das Problem, wenn ich den Wert "surveyPage" so ändern möchte.
Die unten wird ein neues Cookie erstellen, das ist nicht was ich will.
int cookieValue = Convert.ToInt32(Request.Cookies["SurveyCookie"]["surveyPage"]) + 1;
Response.Cookies["SurveyCookie"]["surveyPage"] = cookieValue.ToString();
Dann habe ich diesen Code unten versucht, der auch nicht funktioniert. Die surveyPage ist noch 1, wenn es 2.
Request.Cookies["SurveyCookie"]["surveyPage"] = cookieValue.ToString();
werden sollte, da keine der oben genannten Werke, was die für surveyPage Cookies Wert ändert?
_HttpResponse.SetCookie() _ unterstützt die Infrastruktur Produkt und ist nicht zur direkten Verwendung im Code bestimmt. Die richtige Methode zum Aktualisieren eines Cookies gemäß der _HttpResponse.SetCookie() _ -Dokumentation von Microsoft ist _Response.Cookies.Add (MyCookie); _. Sehen Sie sich das Beispiel unten in https://msdn.microsoft.com/en-us/library/system.web.httpresponse.setcookie(v=vs.110).aspx an –