我想使用
之类的东西来存储cookieResponse.Cookies.Set(new HttpCookie("name","value");
完成页面生命周期后,将其放入OnUnload()
事件中是有意义的。
但是在此阶段,Request
和Response
已经被卸载,因此抛出空引用异常。
有没有人有脑风暴来解决这个问题?
我能想到的只是将它放在OnPreRender()
中,但我担心这可能会“很快”。
答案 0 :(得分:2)
由于cookie是在HTTP标头中发送的,因此您必须在将任何内容写入响应流之前设置cookie。因此,您必须在呈现页面之前设置cookie,因为这是生成响应中发送的代码的原因。
因此,在页面生命周期之后添加cookie太迟了。为什么你认为将cookie添加到页面时会有什么不同?由于cookie在HTTP标头中发送,它们将同时到达浏览器,无论您何时运行代码来添加它们。