2017-03-23 9 views
0

Wie kann ich das Bild anzuzeigen, während das Bild in der Datenbank 0xFFD8FFE00 ist .......Kann nicht Bildanzeige von Nvarbinary [max] Datenbank

Im mit MVC 5 und EF

Mein Code Bild hochladen:

 string pic = System.IO.Path.GetFileName(file.FileName); 
     string path = System.IO.Path.Combine(
           Server.MapPath("~/Content"), pic); 
     file.SaveAs(path); 

     using (MemoryStream ms = new MemoryStream()) 
     { 
      file.InputStream.CopyTo(ms); 
      model.Image = ms.GetBuffer(); 
     } 

     var image = new Image() 
     { 
      Image1 = model.Image 
     }; 

     db.SaveChanges(); 

Wie Sie im mit Ansichtsmodell mit byte [] Datentyp für Bild

Wie konvertiert es zu Bild und zeigt es in der Ansicht sehen können?

Antwort

0

können Sie byte[] zu based64 String umwandeln, die konvertieren kann Format wie

@{ 
    var base64 = Convert.ToBase64String(Model.Image); 
    var imgSrc = ($"data:image/png;base64,{base64}"); 
} 

dieses Bild konvertieren in HTML base64string und ich nehme an Model.Image vom Typ byte[] und schließlich die imgSrc zu HTML-Tag hinzufügen image

<img src="@imgSrc" /> 

eine andere Art und Weise ist Viewbag so in Aktion zu verwenden

var base64 = Convert.ToBase64String(Image); 
Viewbag.imgSrc = ($"data:image/png;base64,{base64}"); 

und im Hinblick auf den Einsatz viewbag

<img src="@Viewbag.imgSrc" />