我有一个场景,我的 ASP.NET Web 应用程序的用户提交由文本信息和图像组成的推荐。提交过程有以下步骤:
- 首先,用户输入内容并选择图像的路径
- 当他点击预览时,信息再次显示,以便他可以确认
- 一旦确认信息将保存在数据库中
问题是我不想在用户实际确认之前将上传的图像存储在数据库中。相反,我将它们存储为临时文件,并仅在最终确认后才将它们放入数据库中。
由于我还希望我的应用程序以中等信任度运行,因此我仅对应用程序目录具有写入权限,而在外部没有任何权限。我什至想将 ASPNET / NETWORK SERVICE 用户的写入权限限制为 ~/App_Data 文件夹。我的方案的问题是,一旦在此文件夹中创建了一个临时文件,应用程序池就会被回收,我不希望在每次提交证明时都这样做。
您如何建议我保留这些临时文件?如果我更新文件,则不会重新启动池 - 仅在创建或重命名时。但我不认为我可以为所有用户将整个图像存储在一个文件中。你怎么看?
更新:我应该注意我正在使用第三方控件进行上传。它使我可以在上传后以编程方式访问文件内容的二进制流,但在第二次回发后我无法保留它(第一步和回发实际上是上传)。