我正在使用 ASP.net 来存储 cookie。我在后面的代码(C#)中的弹出窗口中保存了一个 cookie。如果我在弹出窗口关闭之前请求 cookie,那么 cookie 就在那里,但是关闭弹出窗口并返回它并查看 Page_Load 事件中的 cookie 显示没有 cookie。我如何让它坚持下去?
弹出确定按钮中的以下代码
// Set the cookie.
this.Response.Cookies["UserData"].Secure = true;
this.Response.Cookies["UserData"]["UserId"] = iId.ToString();
this.Response.Cookies["UserData"]["UserEmail"] = strEmail;
this.Response.Cookies["UserData"].Expires = DateTime.Now.AddDays(1);
以下代码放置在 Page_Load 事件中
// Get the cookie.
if (null != this.Request.Cookies["UserData"])
{
// Transmit the cookie information using SSL. Note, the cookie data is still in plain text on the user's computer.
this.Request.Cookies["UserData"].Secure = true;
// Extract: Email
String strEmail = this.Server.HtmlEncode(oPage.Request.Cookies["UserData"]["UserEmail"]);
}
自然,第一次将显示空,但随后的加载应显示 cookie。
使用 .Values["Subitem"] = "whatever" 时我的运气稍好一些,但这使基础得以持续存在,但所有子项都消失了。