使用GUID作为图像名称上传新记录的困境

时间:2011-01-18 19:57:30

标签: asp.net file-upload guid

对于我的CMS,我希望用户能够上传连接到产品的图片。这一切都很顺利,直到有人想在创建新记录时上传图片。

这里的问题是每个产品都有一个GUID(在ProductID(PK)旁边),并且将在第一次保存产品时创建。我通过带有Uploadify jquery插件的web服务上传我的图像,所以它都是基于ajax的方式。然而,图像上传器需要知道GUID以将其存储在正确的目录中。

我的临时解决方法是让用户在上传之前保存产品,因此GUID已知,但它不是非常用户友好,我相信会有更好的方法,但我自己找不到令人满意的产品。

这是我能想到的唯一选择,但是我可能完全错过了一些东西:

  • 在不保存产品的情况下创建GUID,以便可以上传图像,然后可以保存带有GUID的产品。但是如果用户在上传后导航会怎么样?我可以创建一个计划任务来删除那些orphant图像

有没有人处理类似的情况?我对你的问题非常感兴趣,因为这个功能将在我的CMS中的多个部分中使用。

谢谢你的时间!

亲切的问候, 标记

1 个答案:

答案 0 :(得分:1)

你大多是自己回答了你的问题。

密钥是临时文件。这是一个更聪明的方法:将图像保存在临时文件夹中,并记住Session对象中的图像名称。如果用户导航,在Global.asax的Session_End方法中删除这些图像(更好地说垃圾收集它们)。

如果用户保存产品,请永久存储图像并相应地命名!!