2014-06-17 83 views
0

無法以檢索從MySQL數據庫使用以下在mvc4代碼團塊圖像與entityframework6Blob圖片無法轉換爲圖片格式?

 byte[] photo = entity.collections.Where(p => p.CustomerID == CustomerID).Select(img => img.Money_Receipt_Photo).FirstOrDefault(); 
     MemoryStream ms = new MemoryStream(photo); 
     ms.Write(photo, 0, photo.Length); 
     System.Drawing.ImageConverter converter = new System.Drawing.ImageConverter(); 
     System.Drawing.Image returnImage = (Image)converter.ConvertFrom(ms); 
     return returnImage; 

錯誤:ImageConverter不能從System.IO.MemoryStream轉換。

回答

0

假設您正在接收來自blob的字節流。 試試這個代碼:

public Image Base64ToImage(string base64String) 
{ 
    // Convert Base64 String to byte[] 
    byte[] imageBytes = Convert.FromBase64String(base64String); 
    MemoryStream ms = new MemoryStream(imageBytes, 0, 
    imageBytes.Length); 

    // Convert byte[] to Image 
    ms.Write(imageBytes, 0, imageBytes.Length); 
    Image image = Image.FromStream(ms, true); 
    return image; 
} 
+0

我已經嘗試過,這是我的視圖代碼如何讓base64string爲放慢參數?我在這裏獲取圖像作爲字節byte [] photo = entity.collections.Where(p => p.CustomerID == CustomerID).Select(img => img.Money_Receipt_Photo).FirstOrDefault(); – user123

+0

當我想獲得沒有customerid的圖像的字節,直接通過傳遞Money_Receipt_Photo作爲上述參數傳遞給控制器​​的視圖方法沒有被解僱 – user123

+0

我的實體public byte [] Money_Receipt_Photo {get;組; }比它如何支持這個byte [] imageBytes = Convert.FromBase64String(base64String);? – user123