避免在更改web.config和bin文件夹时丢失会话变量

本文关键字:文件夹 变量 会话 bin config web | 更新日期: 2023-09-27 17:57:52

我们有一个ASP.net网站,我使用会话变量。但当客户使用我的网站时,如果我更改web.config,就会导致应用程序池重新启动,所有会话都会丢失。

现在,在我的情况下,该网站是用于提交客户的查询。因此,一旦客户提交页面或表格,数据就会写入我们的数据库。现在,所有信息,如客户编号、姓名等都将丢失,只有他的查询(不是会话变量)会被提交。因此,我们只得到查询,而没有相关的信息谁发布了它。所以,它成为了一个严重的问题,我们找到谁发布了。

另外,如果我更改了bin文件夹文件,那么它会引起同样的问题吗?那么,这个问题的最佳解决方案是什么呢?

避免在更改web.config和bin文件夹时丢失会话变量

是的,这是内存会话状态的预期行为-IIS的重新启动或应用程序池的回收或应用程序域的回收将终止该状态。也就是说,更改web.config或触摸站点中足够多的文件(包括bin文件夹)将导致应用程序域通过内置的ASP.Net逻辑进行回收。

为了解决这个问题,使用进程外的ASP.Net SQL会话状态:内置SQL会话状态或状态服务,ASP.Net.

还有许多其他会话状态的实现