将文件临时存储在服务器上,直到任务完成

时间:2011-09-24 21:21:02

标签: asp.net-mvc asp.net-mvc-3 cdn rackspace-cloud

我无法使用会话。

接下来是场景:我希望用户上传图片,但该图片需要特定尺寸。因此,我允许他们上传任意大小的图像,将其临时存储在服务器上(调整大小以使其适合网页),将其显示回用户,让用户裁剪它。然后我将裁剪详细信息发送回服务器,裁剪图像并保存并将其用作用户个人资料图片。

我尝试在上传之前完成所有这些操作,但显然,它存在安全风险且不允许。

那么如何临时存储此文件?如果用户在裁剪之前没有回来怎么办,我不想要像我的服务器那样的大图像。我将如何在像这样的无状态应用程序中删除文件?

文件存储在CDN上。

2 个答案:

答案 0 :(得分:0)

您可以使用类似于Session的TempData,但在阅读后会死亡。

答案 1 :(得分:0)

有很多方法可以解决这个问题,但也许一个简单的方法是,每次上传文件时,都要调用一个例程来检查和删除任何超过xxx分钟的“大”文件。

或者,安排作业在任务计划程序中每隔xxx分钟执行相同操作。