我开发了一个应用程序,其中一些 pdf 报告在临时文件夹中生成。temp 文件夹位于 wwroot 文件夹内。现在,有时一旦生成 pdf,会话就会被破坏。
这是由于临时文件生成引起的吗?临时文件夹应该在 wwroot 文件夹之外吗?
我开发了一个应用程序,其中一些 pdf 报告在临时文件夹中生成。temp 文件夹位于 wwroot 文件夹内。现在,有时一旦生成 pdf,会话就会被破坏。
这是由于临时文件生成引起的吗?临时文件夹应该在 wwroot 文件夹之外吗?
是的,您应该将该文件夹放在根文件夹之外。
会话被破坏的原因是 IIS 在修改 15 个文件时重新启动应用程序。一个简单的解决方法是在 IIS 中创建一个虚拟目录,指向根目录之外的文件夹,然后将文件写入该目录。
这样,您的网站不需要对文件夹的任何硬引用,而是可以使用 MapPath 将虚拟目录映射到物理文件夹
为什么不使用App_Data
文件夹?它更简单,你不会遇到这种问题。
我终于在 wwwroot 文件夹之外添加了一个文件夹,通过虚拟目录链接它解决了这个问题。