在会话中保存临时图像文件

时间:2013-10-07 05:47:04

标签: c# asp.net .net image

有一个用户注册模块,要求在注册前上传用户的徽标。 我遇到了存储此上传图片的问题,因为在用户上传徽标时,不会创建实际的用户项目。

作为解决方案,我可以考虑在会话变量中保存上传的图像(直到创建实际的用户项)。在性能和长期使用系统方面,这是一个好主意吗?

2 个答案:

答案 0 :(得分:2)

听起来不错。使用session for state将始终对您扩展应用程序的能力产生负面影响,并将大型二进制blob放入会话中会给应用程序带来巨大的内存压力。一个更好的解决方案是将图像存储到文件系统的临时区域,并实现常规扫描功能,清除由未转换为注册用户的用户上传的任何上传图像(例如,任何图像)超过一天)。显然,当用户完成注册时,您会将图像从临时存储中移出。

答案 1 :(得分:-1)

我建议使用一个临时文件夹来存储文件,为它们提供一些唯一的名称(例如,使用Uuid)。