进来分析一下asp.net中session丢失问题

lawbc 2010-03-12 02:13:31
网站是用框架页面做的,每次登陆不久(肯定没有超过session的timeout时间),就自动退出了
退出原因是session读取不到值了,就是session丢失了

之前一个网站,也是用框架做的,域名不一样,空间都是同一个,但是前面的网站不会错,就是这个网站出错
很奇怪呀

验证session是这样的,代码如下:

public class AdminPage : Page
{
public string UserName
{
get
{
object val = Session["login_user"];
return val == null ? "" : val.ToString();
//return WebUtility.GetCookie("loginuser");
}
}

protected override void OnPreLoad(EventArgs e)
{
Response.AddHeader("P3P", "CP=CAO PSA OUR");

base.OnPreLoad(e);

if (string.IsNullOrEmpty(UserName))
{
Response.Clear();
Response.Write("<script>window.frames.top.location.href=\"Login.aspx\";</script>");
Response.End();
}
}
}


每个页面都继承这个类,session配置如下:
<sessionState timeout="60" mode="StateServer" cookieless="false"></sessionState>

请大家分享下是什么原因,如果是框架页面的话,那么为什么前一个网站不会错????
...全文
99 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
wx8849 2010-03-12
  • 打赏
  • 举报
回复
可能是你赋值的时候页面刷新丢了
xinxing130 2010-03-12
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 laoyingisme 的回复:]
用ViewState代替
[/Quote]

ViewState代替能够代替Session 你太强了,这样的问题直接找服务器提供商就好了!
laoyingisme 2010-03-12
  • 打赏
  • 举报
回复
用ViewState代替
mengxj85 2010-03-12
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 wangkun9999 的回复:]
这个问题经常遇见,涉及到Session持久化问题,可以考虑把session存数据库,方法:
把mode="StateServer",执行C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\InstallSqlState.sql产生一个存放sessionid的数据库就可以了。
参考:
http://www.blueidea.com/tech/progra……
[/Quote]
可以考虑这样子做
demon19850227 2010-03-12
  • 打赏
  • 举报
回复
换空间
lawbc 2010-03-12
  • 打赏
  • 举报
回复
sessionId没有变化,如果是服务器的原因的话,哪要怎么解决呀,我只有ftp不能登录远程,而且空间好像不支持sql(吐血了)
wangkun9999 2010-03-12
  • 打赏
  • 举报
回复
这个问题经常遇见,涉及到Session持久化问题,可以考虑把session存数据库,方法:
把mode="StateServer",执行C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\InstallSqlState.sql产生一个存放sessionid的数据库就可以了。
参考:
http://www.blueidea.com/tech/program/2004/1856.asp
手抓宝 2010-03-12
  • 打赏
  • 举报
回复
IIS说,我很累,于是就把Session咔嚓了
kyoybs 2010-03-12
  • 打赏
  • 举报
回复
你每次把SessionID输出来,看是不是变化,如果没变化,但Session中的值丢失,是服务器的原因。 如果变化 了, 是客户端或网络的原因。

62,041

社区成员

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

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

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

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