在Web应用程序上删除目录时,ASP.NET会丢失会话数据

在Web应用程序上删除目录时,ASP.NET会丢失会话数据,asp.net,session,web-applications,session-state,Asp.net,Session,Web Applications,Session State,我正在asp.net mvc2中创建一个web应用程序,在一个有趣的情况下遇到了一个小问题,我假设这是web应用程序的默认行为。(会话状态=inproc) 当我删除webapplication根目录中的目录时,我的会话数据将被清除。 我读过一些人提出的问题,他们要求解决问题,但对问题了解不多,有人知道如何防止这种行为吗 注意:我不想移动由其他IIS实例提供服务的其他“子域”的目录,也不想更改sqlserver的会话状态 提前感谢你的帮助 谢谢大家,在那篇文章的链接上找到了解决方案 我在我的glo

我正在asp.net mvc2中创建一个web应用程序,在一个有趣的情况下遇到了一个小问题,我假设这是web应用程序的默认行为。(会话状态=inproc)

当我删除webapplication根目录中的目录时,我的会话数据将被清除。

我读过一些人提出的问题,他们要求解决问题,但对问题了解不多,有人知道如何防止这种行为吗

注意:我不想移动由其他IIS实例提供服务的其他“子域”的目录,也不想更改sqlserver的会话状态

提前感谢你的帮助

谢谢大家,在那篇文章的链接上找到了解决方案

我在我的global.asax应用程序中添加了以下代码:

Dim p As System.Reflection.PropertyInfo = GetType(HttpRuntime).GetProperty("FileChangesMonitor", Reflection.BindingFlags.Public Or Reflection.BindingFlags.NonPublic Or Reflection.BindingFlags.Static)
Dim o As Object = p.GetValue(Nothing, Nothing)
Dim f As System.Reflection.FieldInfo = o.GetType.GetField("_dirMonSubdirs", Reflection.BindingFlags.Instance Or Reflection.BindingFlags.NonPublic Or Reflection.BindingFlags.IgnoreCase)
Dim monitor As Object = f.GetValue(o)
Dim m As System.Reflection.MethodInfo = monitor.GetType.GetMethod("StopMonitoring", Reflection.BindingFlags.Instance Or Reflection.BindingFlags.NonPublic)
m.Invoke(monitor, New Object() {})
谢谢。


很可能与此相关:

这篇博文可能会为你澄清一些事情:

我的建议是创建一个虚拟目录并操作该目录的内容(而不是触摸应用程序目录本身)