C# 在C中使用HttpCookie代替会话

C# 在C中使用HttpCookie代替会话,c#,asp.net,cookies,C#,Asp.net,Cookies,我想在ASP.NET中使用HttpCookie而不是会话 当我在登录页面中设置cookie并将其重定向到下一页时,我遇到了问题。如果我尝试在下一页访问cookie,它将返回null 登录页面代码 主页代码 您不必创建新的Cookie,而是使用Request.Cookies检索现有的Cookie 见: 另一件事是从您的第一个代码中删除设置域,您将设置它两次,只需注释掉这两行 HttpCookie loginCookie = new HttpCookie("LoginInfo"); loginCoo

我想在ASP.NET中使用HttpCookie而不是会话

当我在登录页面中设置cookie并将其重定向到下一页时,我遇到了问题。如果我尝试在下一页访问cookie,它将返回null

登录页面代码

主页代码


您不必创建新的Cookie,而是使用Request.Cookies检索现有的Cookie

见:

另一件事是从您的第一个代码中删除设置域,您将设置它两次,只需注释掉这两行

HttpCookie loginCookie = new HttpCookie("LoginInfo");
loginCookie["EmailID"] = txt_email.Text;
//loginCookie.Domain = ConfigurationManager.AppSettings["SiteURL"]; //This one
loginCookie.Expires = DateTime.Now.AddDays(30);
loginCookie.Secure = false;
//loginCookie.Domain = "/";  //and This one
Response.Cookies.Add(loginCookie);
Response.Redirect("home.aspx");

您不必创建新的Cookie,而是使用Request.Cookies检索现有的Cookie

见:

另一件事是从您的第一个代码中删除设置域,您将设置它两次,只需注释掉这两行

HttpCookie loginCookie = new HttpCookie("LoginInfo");
loginCookie["EmailID"] = txt_email.Text;
//loginCookie.Domain = ConfigurationManager.AppSettings["SiteURL"]; //This one
loginCookie.Expires = DateTime.Now.AddDays(30);
loginCookie.Secure = false;
//loginCookie.Domain = "/";  //and This one
Response.Cookies.Add(loginCookie);
Response.Redirect("home.aspx");

很抱歉造成混淆,我正在登录页面中设置帐户id,但没有添加到此处。这是因为我在将cookie添加到响应后立即重定向。这不是请求吗?Cookies?@sushmit.patil,请尝试在第一部分代码中注释域设置,您似乎设置了两次,只需将这两行注释掉,然后再试一次。@Habib,工作伙伴。将其作为答案发布。很抱歉造成混淆,我也在登录页面中设置了帐户id,但没有添加到此处。这是因为我在将cookie添加到响应后立即重定向。Cookies?@sushmit.patil,请尝试在代码的第一部分注释域设置,似乎您设置了两次,只需将这两行注释掉,然后再试一次。@Habib,工作伙伴。将其作为答案发布。您设置了loginCookie.Domain两次。是吗?你试过使用Request.Cookies[LoginInfo]来读取cookie吗?是的,试过不工作看看Habib编辑的答案你设置了两次loginCookie.Domain。是吗?你试过使用Request.Cookies[LoginInfo]来读取cookie吗?是的,试过不工作看看Habib编辑过的答案
HttpCookie loginCookie = Request.Cookies["LoginInfo"];
HttpCookie loginCookie = new HttpCookie("LoginInfo");
loginCookie["EmailID"] = txt_email.Text;
//loginCookie.Domain = ConfigurationManager.AppSettings["SiteURL"]; //This one
loginCookie.Expires = DateTime.Now.AddDays(30);
loginCookie.Secure = false;
//loginCookie.Domain = "/";  //and This one
Response.Cookies.Add(loginCookie);
Response.Redirect("home.aspx");