aspx在页面跳转(Response.Redirect)时丢失session问题及解决办法

【问题描述】

假设a.aspx.cs页面保存有Session["empid"]="3",
当a.aspx.cs通过Response.Redirect("b.aspx")到达b.aspx页面后,b.aspx.cs获取到的Session["empid"]为null

【解决思路】
目前没有找到比较好的方法,暂时的处理方式是:
在a.aspx页面跳转到b.aspx时,将session的值传过去,b.aspx页面接收到之后将该值更新到session值里
【代码】

a.aspx.cs:某个跳转的操作中
string idValue=Convert.toString(Session["empid"]);
Response.Redirect("b.aspx?id="+idValue);

b.aspx.cs: Page_Load中
string idValue = Convert.ToString(Request.QueryString["id"]);
Session["empid"]=idValue;

时间: 2024-10-27 13:34:36

aspx在页面跳转(Response.Redirect)时丢失session问题及解决办法的相关文章

【转】Server.Transfer页面转向和Response.Redirect页面转向差异

/*自己总结*/ Response.Redirect可以转向本地页面和外链页面 Server.Transfe只能转向本地页面 /*原文摘要*/ Response是叫浏览器去重新转向到指定的网页,而Server自然是发生在服务器端为主了,因此会有以下区别: 1. Server.Transfer只能够转跳到本地虚拟目录指定的页面,而Response.Redirect则十分灵活:2. Server.Transfer可以将页面参数方便传递到指定页面:3. 使用时,Server.Transfer跳到别的页

get/post时中文乱码问题的解决办法

常有的方法,get请求用在tomcat的编码改为utf-8 即可 post 过滤器就可以 一.常识了解 1.GBK包含GB2312,即如果通过GB2312编码后可以通过GBK解码,反之可能不成立; 2.java.nio.charset.Charset.defaultCharset() 获得平台默认字符编码: 3.getBytes() 是通过平台默认字符集进行编码: 二.中文乱码出现 在学习任何一门技术时,经常会有初学者遇到中文乱码问题,比如MySQL,是因为在安装时没有设置:而在Servlet中

MYSQL更改root password时遇到Access Denied的解决办法

今天在公司虚拟机上装MYSQL之后需要修改root password,然而遇到这样的错误: Access denied for user 'root'@'localhost' (using password:YES) 后来在网上搜了下,找到如下解决办法,测试可用. # /etc/init.d/mysql stop# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &# mysql -u root mysqlmysql&g

STM8S编译时内存溢出错误的解决办法

? 导致COSMIC报告"segment .ubsct overflow"错误的根本原因是内存溢出, 相关原因分析如下: ? 1.变量存储空间结构 ? STM8S105系列CPU的RAM地址范围为0~0x7FF的2K空间,其中默认将高512字节分配给堆栈,剩下0~0x5FF字节为变量存储空间 .在0~0x5FF的空间范围内,低256字节被定义为Zero page,其中包括.bsct,.ubsct,.bit,.share ? 可见, 当segment .ubsct overflow错误出

eclipse运行 Maven Test命令时控制台输出乱码的解决办法

在Maven的pom.xml文件中增加: <properties>      <argLine>-Dfile.encoding=UTF-8</argLine> </properties> 今天突然遇到这个问题了,上网搜了一下,答案一大堆,还是这个最好!记录一下! eclipse运行 Maven Test命令时控制台输出乱码的解决办法,布布扣,bubuko.com

安装Oracle客户端时,检查系统要求时状态为错误的解决办法

这是我自己安装oracle11g至win7的错误记录: 正在检查操作系统要求...要求的结果: 5.0,5.1,5.2,6.0 之一实际结果: 6.1 我换了 10g,11g从32bit到64bit折腾了好多次,最后终于找到了解决的方法-- 看到那一个错误了么?实际上是因为配置文件引起的 找到 refhost.xml 文件(位置:database/stage/prereq/db,打开 refhost.xml 配置文件并找到 <CERTIFIED_SYSTEMS> 节点,接着在节点后面修改6.0

安装oracle时,检测系统要求时状态为错误的解决办法

在安装oracle时,检测系统要求时状态为错误的解决办法: 正在检查操作系统要求.... 要求的结果:5.0,5.1,5.2,6.0之一 实际结果:6.1      实际上是因为配置文件引起的      找到 refhost.xml 文件(位置:database/stage/prereq/db,打开 refhost.xml 配置文件并找到 <CERTIFIED_SYSTEMS> 节点,接着在节点后面修改6.0至6.1      <!--Microsoft Windows 7-->

android 读取DDMS里的文件时打不开,解决办法

1.问题:安卓自带数据库SQLite数据读取时(ddms---data----data----yourprojectname----databases),当点击data时目录展不开.从而无法查看数据库表中的数据. 2.方法:第一获得ROOT权限,如何获得root权限?我下载了一个一键root工具,挺好用的 (muzisoft.exe)安装在电脑上,并连接手机.点击一键root,等几分钟即可. 3.修改要查看文件的权限,下载一个RE(R.E管理器)并安装在手机上,运行,长按要查看的文件,在弹出的列

Android SDK安装时碰到的问题之解决办法

问题: hostname in certificate didn't match: <dl-ssl.google.com> != <www.google.com> Fetching URL: https://dl-ssl.google.com/android/... 解决办法: 第一步: 打开Windows中C:\WINDOWS\system32\drivers\etc\hosts,Linux中/etc/hosts文件,然后添加以下内容: 203.208.46.146 dl.goo