关于Session的问题

LichKingSZ 2006-11-21 10:06:12
我自己写了一个类,并想把类的实例加载到Session中,比如以下:

Session["MyObject"]=new MyClass();

在加载时没有出错,但是在使用时有这个问题:
MyClass有一个成员变量MyVar,我想这样使用 Session["MyObject"].MyVar 时报没有定义,我应该如何达到类似的功能呢?
...全文
156 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
LichKingSZ 2006-11-21
  • 打赏
  • 举报
回复
感觉这样的话,好像没有达到用户专用的目的呀。。。
goodpopo 2006-11-21
  • 打赏
  • 举报
回复
clsCommon cls=new clsCommon();
Sesion["Common"]=cls;
((clsCommon)Session["Common"]).strAddr = "YH";
LichKingSZ 2006-11-21
  • 打赏
  • 举报
回复
先结贴给你 :)
XTomb 2006-11-21
  • 打赏
  • 举报
回复
ms-help://MS.MSDNQTR.v80.chs/MS.MSDN.v80/MS.VisualStudio.v80.chs/dv_aspnetcon/html/6d60d381-6521-4e1d-9089-da6464f2a9bc.htm

到MSDN里看看这篇文章吧!专门讲会话维持的!
LichKingSZ 2006-11-21
  • 打赏
  • 举报
回复
。。。看到只能写到COOKIE里了。。。
不过担心有些手机的浏览器读COOKIE会有问题。。。
XTomb 2006-11-21
  • 打赏
  • 举报
回复
这个要看你存的是什么东西了!如果是非敏感信息(不是安全信息)且数据也不大,就可以寸在Cookie里,否则用微软提供的状态保持方案存数据库里,但是寸数据库的话session里就只能存可序列化的对象!
LichKingSZ 2006-11-21
  • 打赏
  • 举报
回复
我现在用的也是2.0,写WAP程序。。。不过.NET没怎么用过。。。
LichKingSZ 2006-11-21
  • 打赏
  • 举报
回复
不会吧。。。这样容易丢失呀。。。
那用什么方法来代替Session呢?

分不够可以再加!
LichKingSZ 2006-11-21
  • 打赏
  • 举报
回复
加载时我是这样加载的:

Session["Common"] = new clsCommon();

我没有读取它的值,只是赋值就报错了:

((clsCommon)Session["Common"]).strAddr = "YH";

XTomb 2006-11-21
  • 打赏
  • 举报
回复
session丢失的原因是很多的!尤其是在2.0里面!所以我现在基本上是不用Session了!我碰到过2.0里2-3分钟就丢一次!
XTomb 2006-11-21
  • 打赏
  • 举报
回复
代码就是这样写的!没错,是因为Session丢失了所以Session["MyObject"]返回的是一个null这时候就会报这个错误
xielingxu 2006-11-21
  • 打赏
  • 举报
回复
UP
LichKingSZ 2006-11-21
  • 打赏
  • 举报
回复
喔。。。这样呀。。。
Session怎么会丢失了呢。。。我没有打关浏览器呀。
XTomb 2006-11-21
  • 打赏
  • 举报
回复
这是因为Session丢失了!不是代码的原因!
LichKingSZ 2006-11-21
  • 打赏
  • 举报
回复
但是我用你上面写的代码又报这个错:

未将对象引用设置到对象的实例

怎么办呢?
XTomb 2006-11-21
  • 打赏
  • 举报
回复
要进行类型转换!Session给出的是用object封装的所以要转换为你自己写的类型
LichKingSZ 2006-11-21
  • 打赏
  • 举报
回复
谢了,先试试
XTomb 2006-11-21
  • 打赏
  • 举报
回复
((MyClass)Session["MyObject"]).MyVar

62,025

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧