2010-08-08 20 views
0

我將爲ASP.NET Web App中的圖像庫設計一個數據庫。由於某些原因,我決定將圖像存儲在數據庫中,而不是地址。是否可以從一個圖像數據類型加載不同尺寸和重量的圖像?

在應用程序中,我需要兩個或兩個以上不同的尺寸和重量,圖像的每個圖像的管理。對於插入的實例,其中之一是體積小重量輕的縮略圖,另一個是原大單。我是否應該在DataBase中有兩列(一個用於輕量級和小型縮略圖,另一個用於大型和全尺寸之一)或者是否有任何方式可以從Big和原始圖像列中加載不同大小和不同大小的圖像?

希望我能得到它的對面。

謝謝

回答

2

雖然你已經決定存儲圖像數據庫是非常糟糕的性能,所以請使用一些緩存。

現在答:是的,你可以縮小原始圖像顯示的縮略圖,但如果您的用戶不需要查看其縮略圖顯示你可能會負擔DB服務器,以獲得完整的圖像每個原始圖像。在這種情況下,存儲縮略圖和原始文件會更好。

如果你表現出完整的圖像,每縮略圖,你可以簡單地下載完整的圖像,並從它那裏得到的縮略圖。要獲得縮略圖使用此功能:

Image thumb = fullImage.GetThumbnailImage(50, 50, null, new System.IntPtr()); 
+0

謝謝你,我決定店面形象在DB因爲這篇文章的,http://research.microsoft.com/apps/pubs/default.aspx?id=64525 – Mostafa 2010-08-08 10:31:31

+1

@ Mostafa:Jim Gray的論文是一篇很好的論文,但它指的是從數據庫客戶端訪問BLOB。在ASP的情況下,圖像實際上是從Web客戶端訪問的,並且必須通過ASP進行代理,這在「To BLOB or Not to BLOB」文件中沒有考慮到。正因爲如此,對於WWW應用在egenral更有效地存儲在文件系統中的圖像,並返回一個鏈接到圖像,使圖像下載就直接到該文件,繞過所有ASP處理。 – 2010-08-08 18:01:09