2012-07-15 43 views
0

我想每個單獨的圖像保存到它自己的目錄,這將在上傳操作來創建具有以下結構創建圖像SQL Server上的目錄上傳

/server_img_path/<year>/<month>/<day>/<hour><minutes><seconds><img_id>.png 

現在我有以下與上傳存儲的作品,但一個目錄

var fn = Server.MapPath("~/Content/img/" + name + ".png"); 
img.Save(fn, System.Drawing.Imaging.ImageFormat.Png); 

感謝

+0

我不知道你的網站是多麼受歡迎,但是如果你同時有多個上傳文件,只用1秒的分辨率使用文件名會導致重複的文件名。如果在上載數據庫時將圖像鏈接存儲在數據庫中,則最好從數據庫分配唯一的名稱。 – Tony 2012-07-15 20:54:37

回答

1

嘗試這個保存圖像,但這不會每幅圖像存儲到它自己的目錄,因爲這段代碼你將能夠創建一天的目錄。所以一天中的所有圖像都會放在該文件夾中。

var now = DateTime.Now; 
var fn = Server.MapPath("~/Content/img/"); 
var dirPath = Path.Combine(fn, now.Year.ToString(), now.Month.ToString(), now.Day.ToString()); 
if (!Directory.Exists(dirPath)) 
    Directory.CreateDirectory(dirPath); 
var filename = dirPath+now.Hour.ToString() + now.Minute.ToString() + now.Second.ToString() + name + ".png"; 
img.Save(filename, System.Drawing.Imaging.ImageFormat.Png);