ASP.Net MVC как отобразить свойство изображения модели в представлении?
Я новичок в asp.net mvc, но я пытаюсь сделать смешное приложение с GDI+, и мне нужно сделать некоторое представление изображения с помощью asp.net mvc.
у меня есть модель, которая имеет свойство изображения:
namespace DomainModel.Entities
{
public class BackgroundImage
{
// Properties
public Image Image {get; private set; }
public BackgroundImage()
{
Image = Image.FromFile(@"D:ProjectZeroDomainModelimagebkg.PNG");
}
}
}
контроллер отправляет в представление следующее:
public ActionResult Index()
{
BackgroundImage bkImg = new BackgroundImage();
return View(bkImg);
}
вид выглядит так:
<p> Height: </p><%= Model.Image.Height //it prints the height of the image %> </br>
<p> Width: </p><%= Model.Image.Width //it prints the width %> </br>
<p> Image: </p><%= Model.Image //does not work to display the image %>
как отобразить это свойство изображения?
мне нужно это фоновое изображение для div. Мне не нужно изменять размер изображения, мне нужно только покажите его в нормальном размере.
есть ли помощник Html, который я пропускаю?
Спасибо, за ваше время!
2 ответов
вам нужно написать действие контроллера, которое запишет изображение в поток ответов и установит правильный тип контента, чтобы сказать "image/png". Тогда вы можете использовать img
тег для ссылки на это действие в вашем представлении:
public ActionResult Image()
{
byte[] image = GenerateImage();
return File(image, "image/png");
}
и внутри вашего взгляда:
<img src="<%= Url.Action("Image") %>" alt="" />