给Session[xx]直接 赋值 是保存在session哪?给Session[xx]直接赋值后,运行对其监视,在哪可以找到赋值
给Session["xx"]直接 赋值 是保存在session哪?
给Session["xx"]直接赋值后,运行对其监视,在哪可以找到赋值的内容。。原谅我的无知
[解决办法]
if(session["xx"]!=null)
变量或者lable=session["xx"].Tostring();
else
session["xx"]没有值!
[解决办法]
写错了,服务器端
[解决办法]我怎么记得session是存储在服务器的呢
[解决办法]把session当成一个类 []就是索引啊 你看下怎么给类定义索引就明白了
[解决办法]你怎么赋值的就怎么使用就可以了,Debug过程中也可以使用即时窗口来查看,在即时窗口中输入Session["xx"]回车就可以看到值了。
[解决办法]http://www.cnblogs.com/insus/articles/2032508.html
[解决办法]换句话说,你在Page中所看到的Session集合只是“一瞬间”的事情,它随着Page对象的销毁而销毁,不是持久的。
[解决办法]这道理很简单,因为http是无状态的。因此web服务器视每个请求都是独立的。
那么如何得知某一系列的访问是前一个访问的后继呢?我们需要通过一种手段来跟踪状态,这就是会话,听上去很复杂,实现起来很简单,傻子都能想出来的办法。
那就是第一次你访问我的时候,我产生一个编号给你,你再访问就传给我这个编号,那么我检索下,看到和之前给你的一样,那么你就是之前那个访问的后继访问。至于这个编号,就是sessionid,至于它通过什么途径,那无所谓,可以是cookie,也可以是post甚至是url querystring。
[解决办法]Session又称为会话状态,是Web系统中最常用的状态,用于维护和当前浏览器实例相关的一些信息。我们控制用户去权限中经常用到Session来存储用户状态
1、Session的存储方式。
session其实分为客户端Session和服务器端Session。
当用户首次与Web服务器建立连接的时候,服务器会给用户分发一个 SessionID作为标识。SessionID是一个由24个字符组成的随机字符串。用户每次提交页面,浏览器都会把这个SessionID包含在 HTTP头中提交给Web服务器,这样Web服务器就能区分当前请求页面的是哪一个客户端。这个SessionID就是保存在客户端的,属于客户端Session。
其实客户端Session默认是以cookie的形式来存储的,所以当用户禁用了cookie的话,服务器端就得不到SessionID。这时我们可以使用url的方式来存储客户端Session。也就是将SessionID直接写在了url中,当然这种方法不常用。
我们大多数提到的Session都是指服务器端Session。他有三种存储方式(自定义存储在这里不做讨论):
1.1保存在IIS进程中:
保存在IIS进程中是指把Session数据保存在IIS的运行的进程中,也就是inetinfo.exe这个进程中,这也是默认的Session的存方式,也是最常用的。
这种方式的优点是简单,性能最高。但是当重启IIS服务器时Session丢失。
1.2.保存在StateServer上
这种存储模式是指将Session数据存储在一个称为Asp.Net状态服务进程中,该进程独立于Asp.Net辅助进程或IIS应用程序池的单独进程,使用此模式可以确保在重新启动Web应用程序时保留会话状态,并使会话状态可以用于网络中的多个Web服务器。
1.3.保存在SQL Server数据库中
可以配置把Session数据存储到SQL Server数据库中,为了进行这样的配置,程序员首先需要准备SQL Server数据服务器,然后在运行.NET自带安装工具安装状态数据库。
这种方式在服务器挂掉重启后都还在,因为他存储在内存和磁盘中。