C# 无法从cookie设置/获取值
我有一个非常简单的页面,具有以下逻辑:C# 无法从cookie设置/获取值,c#,asp.net,cookies,C#,Asp.net,Cookies,我有一个非常简单的页面,具有以下逻辑: protected void Page_Load(object sender, EventArgs e) { if (null == Response.Cookies["UserSettings"].Value) { HttpCookie cookie = new HttpCookie("UserSettings"); cookie.Value = "The Big C"; cookie.Ex
protected void Page_Load(object sender, EventArgs e)
{
if (null == Response.Cookies["UserSettings"].Value)
{
HttpCookie cookie = new HttpCookie("UserSettings");
cookie.Value = "The Big C";
cookie.Expires = DateTime.Now.AddDays(10);
Response.Cookies.Add(cookie);
}
else
{
// got here
}
}
我在if和else中都设置了一个断点,而else断点永远不会被命中。if语句每次都会被命中。这里可能出了什么问题
谢谢 为什么要检查响应。Cookies您应该检查Request.Cookies。仍在创建响应
更新
请参阅,当您使用HttpResponse.Cookies集合添加cookie时,即使响应尚未发送到客户端,该cookie也会立即在HttpRequest.Cookies集合中可用。但是,即使在添加cookie之前,您也在检查集合中的cookie。所以你需要在Request.Cookie Collection中检查它。你为什么要检查响应。Cookie你应该检查Request.Cookie。仍在创建响应
更新
请参阅,当您使用HttpResponse.Cookies集合添加cookie时,即使响应尚未发送到客户端,该cookie也会立即在HttpRequest.Cookies集合中可用。但是,即使在添加cookie之前,您也在检查集合中的cookie。所以你需要在Request.Cookie Collection中检查它请求、Cookie和响应都有相同的值吗?我想他们会的,但可以再次检查该请求。cookie可能会将cookie返回给您?请求会给出正确的大C值。我应该使用Request而不是Response来读取cookie吗?当然。。。响应不会给您cookies,因为它仍在下一行中创建…请求.cookies和响应.cookies是否具有相同的值?我想他们会的,但可以再次检查该请求。cookie可能会将cookie返回给您?请求会给出正确的大C值。我应该使用Request而不是Response来读取cookie吗?当然。。。回应不会给你cookies,因为它仍在下一行创建中…很高兴我能帮助你。。。祝你好运:-很高兴我能帮忙。。。祝你好运:-