5

我正在創建應用程序,其中我將擁有數據庫,用戶無法編輯。它只是有數據,並顯示給用戶。我發現我不必使用localstorage,我只是可以將數據庫添加到項目中,並且它是隻讀的。所以我做到了,一切都很好。現在我想添加圖像到我的應用程序,我不知道什麼是更好的方法。我可以將每個圖像添加到文件夾中,在數據庫存儲路徑中添加圖像,這很容易,現在可以完成。或者我發現我可以將圖像作爲圖像(byte [])存儲在數據庫中。什麼是更好的?數據庫中的圖像會變小嗎?會加載更快的圖像?如果數據庫中的圖像是更好的解決方案,我可以輕鬆地將圖像添加到我現有的數據庫嗎有沒有什麼文章要在winforms中做到這一點?謝謝作爲資源在數據庫或項目文件夾中的圖像

編輯: 我很高興我的問題有這麼多的答案和意見。我想解釋更多我的需求。我的應用程序應該有大約150張圖片,圖片大小應爲150px和100px。我想要的應用程序將沒有互聯網連接工作。它可以連接更新,但僅此而已。再次感謝所有意見:)

+0

不要將圖像存儲在服務器上,如果你沒有。將內容上傳到網絡比直接保存在您的設備上要慢 – MyKuLLSKI 2012-02-21 19:44:27

回答

1

關於放置圖像的位置有很多'ifs','buts'和'maybes',我認爲沒有正確或錯誤的方法。

有一點值得一提的是,如果應用程序對於高可用性具有業務關鍵性,那麼我將它們存儲在數據庫中,只是因爲可以使用其餘數據進行備份。數據庫可以被鏡像等,所有的圖像被視爲'數據'可以是有益的。此外,如果事情變得很大,並且使用網絡農場和負載平衡器等,當圖像生活在一個地方時會有所幫助。

對我來說,我會去數據庫。但這一切都取決於您的應用程序的規模。

+0

我很高興所有的答案。思考和選擇數據庫後,我選擇你的答案。謝謝 – 2012-02-29 20:32:16

+0

很高興你發現這有用。 – 2012-03-01 09:10:35

0

web文件夾。也想想從Amazon S3等雲服務器遠程加載它們以釋放對自己的服務器的訪問權限

1

我個人會將所有圖像存儲在獨立存儲和數據庫中我會存儲圖像的路徑。

我會保存所有圖片作爲isolatedstorage

3

對於我們的應用一個byte [],我們發現了一個混合的方法效果最好。我們配置了我們的SQL環境以支持FILESTREAM,然後導入我們所有的圖像。這使我們可以靈活地在「sql」中存儲圖像,同時仍然將實際圖像存儲到磁盤。它是一種快速的解決方案,可能也適合你。

0

最好的選擇是將圖像存儲在Web文件夾,如果你將其保存在數據庫中,您將真正浪費時間從DB已經在這裏retreiving他們,因爲它需要更多的時間

+2

我不同意。去網絡不是很快 – MyKuLLSKI 2012-02-21 19:43:06

1

沒有錯的答案,但它取決於你想要完成什麼以及目前如何設置。

最好的辦法是使用靜態圖像的內容交付網絡來緩解Web服務器的負載。

您可以根據自己的喜好從數據庫或文件結構中的資源文件提供服務。如果圖像是靜態的,不要忘記添加適當的緩存,這對於靜態內容來說是遙不可及的。

如果您正在渲染圖像,我肯定會將圖像保存在數據庫中,以便可以從任意數量的Web服務器訪問圖像。

如果您想要進一步開發,可以將最近使用的圖像保存在內存中或存儲在本地文件系統中,這樣您就不必每次都從數據庫獲取文件。

相關問題