如何处理包含许多图像的图像文件夹

时间:2010-12-30 14:43:05

标签: c# asp.net visual-studio image

我正在开发一个新的aspnet网站,在/ Images / -folder中有200万张图片。

Visual Studio中的许多操作都很慢,因为它访问该文件夹,添加Web服务需要10分钟。

图像未检入scm(svn)。

我应该如何构建代码树,以提高VS的性能?

如果并非所有开发人员都需要将200k图像复制到本地磁盘以便能够在网站上进行开发,那也很简洁。

作为数据库blob的图像不是一种选择。

5 个答案:

答案 0 :(得分:1)

将图像目录放在项目之外,如果您的图像至少在db中有相应的条目,请使用ID创建子目录。

经验法则,direcory不应包含超过10k的文件。

path = [id / 10^6] / [ id / 10^3] / [ id]

问候 /吨

答案 1 :(得分:1)

使用网络上的共享文件夹,并指向该位置,如果在iis下运行,请设置应用程序池标识属性。

答案 2 :(得分:0)

根据您的管理方式,您只需“从项目中排除”包含图片的文件夹即可。

但是,请记住,使用Visual Studio的“发布”选项时,图像将不存在。

答案 3 :(得分:0)

从VS解决方案中排除图像,但将其包含在SVN中。 如果他们不需要,开发人员可以选择不从SVN签出图像。 VS在运行时仍会找到图像,但你只是失去了它们的智能感。

答案 4 :(得分:0)

性能注意事项


使用多个文件夹

  • 拥有一个包含200,000个图像文件的文件夹并不是一个好主意。您应该看看是否可以将它们分成多个文件夹,例如A,B,C,D。

使用临时工作文件夹

  • 创建一个临时工作文件夹,其中执行您要对图像执行的任何操作。
    • 将文件从工作文件夹移动到其存储位置(即A,B,C,D)

没有阅读文件名

  • 请勿尝试从光盘读取文件名。这样做会导致糟糕的表现。
    • 相反,您应该存储图像的文件名和路径。
    • 你可以在内存中使用它,你将获得很好的表现。