Я создаю приложение для загрузки изображений в базу данных и показывая их в галерее. Я хотел бы, чтобы изображение привязывалось к странице. Я просто не знаю, как я могу назвать URL-адрес модели в представлении. Или мне нужно сделать специальную функцию контроллера здесь?Как сохранить URL-адрес изображения в базе данных и использовать его в ASP.NET MVC?
ImageGallary.cs
public partial class ImageGallery
{
public int ImageID { get; set; }
public int ImageSize { get; set; }
public string FileName { get; set; }
public string ImageURL { get; set; }
public byte[] ImageData { get; set; }
[Required(ErrorMessage="Please select an image file")]
public HttpPostedFileBase File { get; set; }
}
Gallery.cshtml
@model List <JensGoesASP.ImageGallery>
@{
ViewBag.Title = "Gallery";
}
<h2>Films</h2>
@* Hier komen de geuploade images *@
<table class="table">
@{
int j = 0;
for (int i = 0; i < Model.Count(); i += 4)
{
j = i;
@* Dit laat 4 images per rij zien *@
<tr>
@while (j < i + 2 && j < Model.Count())
{
<td>
<img src="data:image/png;base64,@Convert.ToBase64String(Model[j].ImageData,0,Model[j].ImageData.Length)" style="padding-top:30px;" />
<a href="THE URL">Button</a> @*Here i want to get the url from the database*@
</td>
j++;
}
</tr>
}
}
</table>
Greetz
Несколько предложений: (1) не используйте таблицу для размещения вашей галереи, она имеет значительные ограничения. (2) не вставляйте свои данные изображения на страницу, а создавайте действие контроллера, которое отвечает на запрос http с данными изображения и устанавливает src для вызова действия с соответствующим идентификатором. (3) вы уже показали, как написать свойство «ImageData» на странице; используйте тот же подход для записи свойства 'ImageUrl' для атрибута' href'. –