Вопрос

Я посылаю растровое изображение в вид в ASP.NET MVC. У меня есть недвижимость в моем просмотре:

public Bitmap TemplateImage { get; set; }

На мой взгляд, я хочу иметь возможность отображать изображение растрового изображения, но я не могу понять, как это сделать.

Это было полезно?

Решение

Одним из решений было бы создать новое действие, например, это:

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);
}

и вместо этого отправьте идентификатор для изображения и ссылайтесь на него так:

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

Другие советы

Поскольку HTTP не предназначен для того, чтобы иметь возможность наполнять данные HTML и двоичного изображения в одном и том же конвейере в одном и том же соединении, это делает передачу данных растрового изображения в вашем представлении бессмысленным. Вы должны найти другой способ, сохранив (возможно, временно) данные растрового изображения и запрашивая их клиент через уникальный URL.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top