我有一个使用IIS中托管的WCF服务的Silverlight应用程序。我使用了ASP.NET的某些方面。
我的应用程序有以下文件夹结构:
inetput
wwwroot
myapp
reports
{user-guid-folders}
report1.pdf
report2.pdf
App_Data (folder)
bin (folder)
Client_Bin (folder)
(various .aspx files, plus web.config, etc.)
应用程序动态生成报告并将其放在具有GUID的文件夹中,该GUID对于用户而言是唯一的。一切正常。
但是,当用户注销时,我正在清理并删除其文件夹中的PDF文件,然后删除其GUID文件夹。
删除文件工作正常,但是如果我删除文件夹,应用程序会循环(然后删除所有其他用户的会话 - 我为每个用户的会话获得一个Session_OnEnd事件,以及一个Application_OnEnd事件。下一个用户请求导致整个申请重启。
所以,虽然我可以通过不删除GUID文件夹(我的应用程序本身创建)来解决这个问题,但是这是什么原因?有什么方法可以防止这种情况发生吗?