2010-11-10 56 views
0

業務目的:我創建了一個CMS,允許用戶「刪除」他們以前上傳到服務器的圖像。如何修改/添加元數據到System.Drawing.Image文件

問題:如果我允許他們真的刪除圖像,他們留下他們已創建的舊文章與現在破碎的圖像。例如:用戶上傳vtWinsACC2005.jpg,寫一篇關於它鏈接到圖像的文章,然後最終清理他的畫廊並刪除該圖像,但將文章單獨留下,最後出現一幅破碎圖像的文章。

目標:當用戶「刪除」他們以前上傳的圖像時,我想在IO中添加一個「註釋」字段或任何類型的元數據到實際文件中,例如「 hidden = true「,並且在我的GetFiles()邏輯中,我將檢查以確保該元數據不存在。通過這種方式,用戶看不到他們已刪除的圖像,並且他們甚至可以在未來「還原」圖像,而不會刪除它們。當他們恢復時,我可以簡單地擦除該文件中的元數據,就是這樣。

替代:保持簡單的查找表中與用戶id +文件名中的數據庫,並稱之爲「HiddenUserImage,」但是,上述方式是更多的樂趣,如果我沒有添加其他表,然後大!

任何想法??這將在C#中。謝謝!

回答

0

我認爲你可以爲每個圖像創建一個NTFS備用數據流,一個隱藏的ADS文件映射到您的圖像文件,並在那裏存儲hidden = true屬性。

+0

您是否有代碼示例?或者鏈接到教程?感謝這個答案! – 2010-11-10 14:31:14

+0

http://stackoverflow.com/questions/604960/ntfs-alternate-data-streams-net – 2010-11-10 14:35:48

+0

and http://coolthingoftheday.blogspot.com/2008/11/adsdotnet-access-ntfs-alternate-data.html – 2010-11-10 14:37:27

0

使用db中的查找表結束了

相關問題