2012-09-17 74 views
2

我有一種情況,在我的MVC代碼中,我將圖像作爲httppostedfilebase類型獲取。我在我的SQL數據庫中有一個相應的圖像類型列。將httppostedfilebase保存爲SQL中的圖像

我需要知道如何將這個httppostedfilebase類型轉換/保存爲我的數據庫中的圖像。

回答

3

創建一個函數來HttpPostedFileBase對象轉換爲文件

public byte[] ConvertToByte(HttpPostedFileBase file) 
    { 
     byte[] imageByte = null; 
     BinaryReader rdr = new BinaryReader(file.InputStream); 
     imageByte = rdr.ReadBytes((int)file.ContentLength); 
     return imageByte; 
    } 

這樣的代碼在你的控制器

public ActionResult Create(AdminDetailsViewModel viewmodel) 
    { 
     if (ModelState.IsValid) 
     { 
     HttpPostedFileBase file = Request.Files["ImageData"]; 
     viewmodel.Image = ConvertToByte(file); 
     db.YourDbContextSet.Add(viewmodel); 
     db.SaveChanges(); 
     } 
    } 

希望這將有助於