Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/30.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 空会话对象是否记住会话ID?_C#_Asp.net_Session - Fatal编程技术网

C# 空会话对象是否记住会话ID?

C# 空会话对象是否记住会话ID?,c#,asp.net,session,C#,Asp.net,Session,我敢肯定,如果会话id中没有存储值,它就会不断变化 但2010年似乎有一个例外: 新建页面(空项目): 奇怪,但是在回发/刷新/ctrl+f5之后:我得到了相同的数字…但是不应该是那样的…(因为我没有存储任何东西) 我错过了什么 p、 美国会话数=0 编辑 我刚刚在vs2005中运行了相同的代码,每次都有一个新的会话id 应该是这样的 会话是一个特殊的ASP.NET运行时对象,在确定的时间内存在于所有请求/响应中。它的设计保持不变,无论是页面加载还是回发 会话终止,然后达到其超时时间。

我敢肯定,如果会话id中没有存储值,它就会不断变化

但2010年似乎有一个例外:

新建页面(空项目):

奇怪,但是在回发/刷新/ctrl+f5之后:我得到了相同的数字…但是不应该是那样的…(因为我没有存储任何东西)

我错过了什么

p、 美国会话数=0

编辑 我刚刚在vs2005中运行了相同的代码,每次都有一个新的会话id


应该是这样的

会话是一个特殊的ASP.NET运行时对象,在确定的时间内存在于所有请求/响应中。它的设计保持不变,无论是页面加载还是回发

会话终止,然后达到其超时时间。您可以控制要使会话保持活动状态的确切超时:

您还可以控制请求之间会话的持久化位置

内存中的状态管理比较简单,它只是将会话对象保存在RAM中。因此,在应用程序池被回收的情况下,所有数据都消失了。更多生产就绪方案包括SQL状态管理

编辑:
我只是假设,然后你在VS2005上运行,你在旧版本的ASP.NET Web Development server(Cassini)上运行,如果会话中还没有存储任何内容,那么我的工作就是与每个新请求进行会话。

看看这里@Aliostad你读过我的问题信息吗?它应该每次都更改,但不显示web.config文件、会话状态部分@alexanderb.@Henk-文档明确指出,当会话为空时,不应重复使用会话ID,因此.net 4.0中存在错误或文档中存在错误。如果内存可用,则通过Cookie保存会话ID?还是我弄错了,它的服务器端?@RoyiNamir,继续打开asp.net的书。。阅读有关会话管理的内容。您仅在每次运行应用程序时获得新ID,而不是在刷新页面时。如果每次刷新页面时都得到一个新ID,那么就有问题了。@alexanderb这与会话对象的实际情况相反。如果重新启动IIS,则会话将无法继续存在,甚至应用程序也无法继续存在。@mshsayem-我们正在使用cookies,因为屏幕截图中的URL不包含会话ID。
   protected void Page_Load(object sender, EventArgs e)
    {
        Response.Write(Session.SessionID);
    }