Domanda

io mando una bitmap per una visualizzazione in ASP.NET MVC. Ho un immobile nel mio ViewModel:

public Bitmap TemplateImage { get; set; }

A mio avviso, voglio essere in grado di rendere l'immagine bitmap, ma io non riesco a capire come farlo.

È stato utile?

Soluzione

Una soluzione potrebbe essere quella di creare una nuova azione, in questo modo:

public FileContentResult Show(int id)
{
    var category = northwind.AllCategories().Single(c => c.CategoryID == id);
    byte[] imageByte = category.Picture;
    string contentType = "image/jpeg";

    return File(imageByte, contentType);
}

e inviare un ID per l'immagine invece e di riferimento in questo modo:

<img src="<%: Url.Action("Show","Image",new { id = Model.Category.CategoryID  }) %>

Altri suggerimenti

Dal momento che HTTP non è destinata ad essere in grado di roba HTML e dati di immagine binari lungo la stessa condotta nella stessa connessione, questo rende il passaggio di dati bitmap al View inutile. Bisogna trovare un altro modo per aggirare memorizzando (forse temporaneamente) i dati bitmap e avere la richiesta del cliente tramite un URL univoco.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top