ASP.NET会话在目录MoveTo上丢失

时间:2011-08-05 15:34:26

标签: asp.net session io

我有一个网络应用程序。当我创建一个客户端时,我将该过程中的一些图片上传到我使用Ticks创建的临时文件夹。最后,当创建的客户端我将该文件夹移动到客户端图片的主文件夹时,我将获得客户端ID的名称。

DirectoryInfo dirTemp = new DirectoryInfo(String.Concat(sPath, "temp/", sTicks));
dirTemp.MoveTo(String.Concat(sPath, sName));

我的文件夹结构是:

sPath = "~/Files/Clients/"

问题是我每次移动文件夹时都会丢失Session ...

2 个答案:

答案 0 :(得分:1)

只要您在appDomain 移动/删除/添加目录当前会话销毁

尝试移动不在您的应用程序文件夹中的目录 - 应该这样做!如果这不是您的问题的正确解决方案更改您的 sessionState 模式。目前,我认为它是InProc。将其更改为 StateServer SQLServer 。 (另见Forums ASP

此外 - 可能重复? - 见this post

答案 1 :(得分:1)

由于您的更改,应用程序池很可能会被回收,这会导致所有会话数据被丢弃。