[英]How can I set cookie value in one page and read it from another page in a asp.net website
这是我在Login.aspx中的代码
protected void LoginButton_Click(object sender, EventArgs e)
{
HttpCookie loginCookie1 = new HttpCookie("loginCookie");
Response.Cookies["loginCookie1"].Value = LoginUser.UserName;
Response.Cookies.Add(loginCookie1);
}
这是在shop.aspx
protected void btnAddCart_Click(object sender, EventArgs e)
{
HttpCookie myCookie = new HttpCookie(dvProduct.DataKey.Value.ToString());
myCookie["Category"] = dvProduct.DataKey["Category"].ToString();
myCookie["Product"] = dvProduct.DataKey["Product"].ToString();
myCookie["Quantity"] = txtQuantity.Text;
myCookie["Price"] = dvProduct.DataKey["Price"].ToString();
myCookie.Expires = DateTime.Now.AddDays(1d);
Response.Cookies.Add(myCookie);
Response.Redirect("ViewCart.aspx", true);
}
我想从cookie中读取用户名的值(在login.aspx中设置的值
你基本上需要请求cookie并不是真正重要的是你在这里的页面是关于cookie的解释
http://msdn.microsoft.com/en-us/library/ms178194.aspx
HttpCookie aCookie = Request.Cookies["loginCookie"];
string username = Server.HtmlEncode(aCookie.Value);
你设置loginCookie的代码看起来很奇怪:
HttpCookie loginCookie1 = new HttpCookie("loginCookie");
Response.Cookies["loginCookie1"].Value = LoginUser.UserName; // <--- strange!!!!
Response.Cookies.Add(loginCookie1);
很可能你的cookie没有被发送到浏览器 - 请查看像Fiddler这样的HTTP调试器。
这应该这样做:
var userName = Request.Cookies["loginCookie"].Value;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.