CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

cookies的怪问题,分不够可在加

楼主renaski(洛林)2004-12-04 20:00:28 在 .NET技术 / ASP.NET 提问

Dim   ctrCookie   As   HttpCookie   =   New   HttpCookie("StrUser")  
                                                                  dd   =   RadioField.Text  
                                                                  Dim   Cookies_Time   As   DateTime   =   DateAdd("d",   dd,   System.DateTime.Now)  
                                                                  With   ctrCookie  
                                                                          .Expires   =   Cookies_Time  
                                                                          .Value   =   Session("User")  
                                                                          .Domain   =   "洛林(renaski)"  
                                                                          '参数以后可以扩展  
                                                                  End   With  
                                                                  Response.Cookies.Add(ctrCookie)  
   
  Response.Write(Request.Cookies("StrUser").Value)  
   
  这个是写进去的,通过验证,没有问题。  
  提交了后页面刷新  
   
  随后在页面的顶部有段取的代码  
    Dim   ctrCookie   As   HttpCookie   =   New   HttpCookie("StrUser")  
                  ctrCookie   =   Request.Cookies("StrUser")  
                  If   Not   ctrCookie   Is   Nothing   Then  
                          Session("User")   =   Request.Cookies("StrUser").Value  
                          Response.Write(Session("User"))  
  ...  
  end   if  
   
  这里  
  Session("User")   =   Request.Cookies("StrUser").Value  
  报错  
  错误内容为  
   
  "  
  未将对象引用设置到对象的实例。    
  说明:   执行当前   Web   请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。    
   
  异常详细信息:   System.NullReferenceException:   未将对象引用设置到对象的实例。  
   
  源错误:    
  "  
   
  也就是说留在客户端的cookies取不到。  
  再去看了web.config  
    cookieless="false"    
  这个没错,我没有禁用。当然,禁用的话,我前面也是取不到的  
   
  但为什么我一刷新或者转到其他的页面这个cookies就消失了呢?我也没有去remove啊。  
  然后查了SDK  
   
  http://chs.gotdotnet.com/quickstart/aspplus/doc/stateoverview.aspx  
   
  他里面居然这样写  
  Protected   Sub   Page_Load(sender   As   Object,   e   As   EventArgs)  
          If   Request.Cookies("preferences1")   =   Null   Then  
                  Dim   cookie   As   New   HttpCookie("preferences1")  
                  cookie.Values.Add("ForeColor",   "black")  
                  ...  
                  Response.AppendCookie(cookie)  
          End   If  
  End   Sub  
   
  不是说VB.Net不支持Null的吗? 问题点数:100、回复次数:7Top

1 楼renaski(洛林)回复于 2004-12-04 20:18:42 得分 0

我刚付好cookies的value后是取的到的,但是只要一刷新或者到其他的页面了,就取不到了。  
   
  怪啊Top

2 楼renaski(洛林)回复于 2004-12-04 20:24:14 得分 0

我的RPWT?  
  -_-~!Top

3 楼radarboy(流浪鸭)回复于 2004-12-04 20:40:54 得分 100

我能取到,你怎么取不到!!!!?  
   
  Top

4 楼radarboy(流浪鸭)回复于 2004-12-04 20:41:07 得分 0

帮你顶上去咯。。。。。。。。Top

5 楼renaski(洛林)回复于 2004-12-04 21:02:55 得分 0

Private   Sub   Page_Load(ByVal   sender   As   System.Object,   ByVal   e   As   System.EventArgs)   Handles   MyBase.Load  
                  '在此处放置初始化页的用户代码  
                  If   Session("user")   =   ""   Then  
                          Dim   ctrCookie   As   HttpCookie   =   New   HttpCookie("StrUser")  
                          Dim   Cookies_Time   As   DateTime   =   DateAdd("d",   30,   System.DateTime.Now)  
                          Session("User")   =   "aa"  
                          With   ctrCookie  
                                  .Expires   =   Cookies_Time  
                                  .Value   =   Session("User")  
                                  .Domain   =   "洛林(renaski)"  
                                  '参数以后可以扩展  
                          End   With  
                          Response.Cookies.Add(ctrCookie)  
                          Response.Write("bb")  
                  End   If  
                  If   Session("user")   =   "aa"   Then  
                          Response.Write(Request.Cookies("StrUser").Expires)  
                          Response.Write(Request.Cookies("StrUser").Value)  
                          Response.Write("rr")  
                  End   If  
          End   Sub  
   
   
  这样的也错了,不知道为什么?Top

6 楼renaski(洛林)回复于 2004-12-04 21:07:53 得分 0

错误还是和上面的一样Top

7 楼renaski(洛林)回复于 2004-12-04 21:38:36 得分 0

把.Domain   =   "洛林(renaski)"去掉就可以了,谢谢鸭子  
  :)Top

相关问题

  • delphi中可不可以读写cookies ?????????? 分不够可以加分.
  • 有关Cookies的问题,解决马上给分,分不够可再加!!
  • 怪问题,高分求助,分不够再加,急!!!
  • 100分够不够?
  • !!!!!!!!!!!!!!!!!!!!!!! 分不够再送??
  • 一个很古怪的问题,分不够可以再加!!!!!!!!!
  • Sync4j出现的奇怪问题,分不够再加
  • 求助:VC的怪问题(UP有分)------------------------------先给100分,不够再追加
  • 100分求助:关于BatchMove的奇怪问题!!!分不够再给。
  • 加急分不够再加,up有分长城BTV6300计算机奇怪问题

关键词

  • cookies
  • 页面
  • 代码
  • ctrcookie
  • struser
  • httpcookie
  • renaski
  • 洛林
  • 刷新
  • 错误

得分解答快速导航

  • 帖主:renaski
  • radarboy

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo