AjaxControlToolkit AsyncUpload在上传完成时创建新会话

时间:2013-12-08 23:49:21

标签: asp.net ajax session

我正在使用Ajax Control Toolkit 3.5(该项目无法升级到4.0)。该项目还使用无Cookie会话。这个应用非常依赖于会话状态。

每当我F5调试应用程序时,它都可以正常工作。但是,我已经将应用程序部署到IIS7,并发生了一种奇怪的行为。无论何时上传文件,输入框都会按预期变为绿色,但它会终止会话状态。相反,它似乎正在创建一个新的会话。

我没有做任何特别的事。我插入了控件:

<asp:AsyncFileUpload ID="AsyncFileUpload1" runat="server" PersistFile="true" Width="220" />

我在Save上检查FileBytes。我当时认为可能与PersistFile有些不兼容,但同样,它在调试时也能正常工作。

我非常感谢任何建议!

1 个答案:

答案 0 :(得分:0)

我想您将文件保存在同一个Web应用程序中。当IIS在Web应用程序中检测到一定数量的新文件(不确定多少)时,它将重新启动应用程序(从而终止所有会话)。

假设您当前正在将文件保存在名为/files的目录中。如果您仍需要通过URL访问这些文件,可以执行以下操作:

  1. 在IIS中,创建名为files
  2. 的虚拟目录
  3. 将虚拟目录指向Web应用程序之外的目录
  4. 现在保存文件时,它们仍然可以在同一个网址上使用,但它们将保存在网络应用程序之外,您的应用程序将无法重新启动