从ASP.NET应用程序删除目录返回到新会话

时间:2009-03-12 13:42:12

标签: asp.net visual-studio-2005

我正在从ASP.NET应用程序中删除目录。删除没问题,但是当我从中删除时,删除前的所有会话数据都会丢失 无论我是否使用:

                if (Directory.Exists(folderPath))
                    Directory.Delete(folderPath, true);

或者:

                System.IO.DirectoryInfo d = new System.IO.DirectoryInfo(folderPath);
                if (d.Exists)
                    d.Delete(true);

在这两种情况下,我都会丢失会话数据。

有没有人遇到过这个问题?

3 个答案:

答案 0 :(得分:10)

如果要删除应用程序中的子目录,您的应用程序域将重新启动。这将删除所有会话数据。要缓解此问题,请仅在应用程序主目录之外添加/删除目录。

答案 1 :(得分:3)

该目录是否在同一个应用程序中?然后删除它将导致AppDomain重新启动,这将导致会话状态丢失。

答案 2 :(得分:1)

是的!删除IIS正在服务的目录会导致重置(或其他)。我遇到了这个问题,我重新设计了应用程序以不删除目录。

对问题的-1感到羞耻,这是一个真正的问题。对于有修复的人来说+1。