【发布时间】:2011-09-28 15:50:14
【问题描述】:
我正在研究 Cookie。我跟着http://asp.net-tutorials.com/state/cookies/ 教程。 此处 Page_Load 检查 BackgroundColor cookie,如果存在,它将获取值并设置背景颜色,否则在 onselectedindexchanged 事件上将创建一个新 cookie。
这里在第一次将cookie设置为红色后,我尝试再次将下拉值更改为绿色,因此控制流将首先到达Page_Load,它将获取cookie值红色并将背景颜色设置为Red ,接下来该控件将流向 ColorSelector_IndexChanged 并再次为 Green 创建一个名为 BackgroundColor 的新 cookie。
当我再次更改下拉值蓝色时,无论过期时间如何,新创建的绿色 Cookie 应该正确显示吗?因为当我将下拉菜单更改为绿色时,会创建并保存一个新的 cookie,但浏览器仍然是红色。
那么 cookie 创建是如何工作的呢?由于cookie名称相同,为什么这里没有绿色cookie替换红色cookie?
【问题讨论】:
-
很明显的问题但是....你在写完新的cookie后刷新了页面吗?
-
@Fishcake 不,我只是简单地更改下拉值。
-
基本上这不是一个很好的教程,但我的回答应该可以解决问题。
标签: c# asp.net cookies state-management