【发布时间】:2016-03-17 10:21:17
【问题描述】:
我正在创建一个应用程序,用于将图像上传到数据库并在图库中显示它们。我想要链接到页面的图像。 我只是不知道如何从视图中的模型调用 url。 还是我应该在这里做一个特殊的控制器功能?
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; }
}
图库.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>
问候
【问题讨论】:
-
几点建议:(1)不要使用表格来布置你的画廊,它有很大的局限性。 (2) 不要在页面中嵌入您的图像数据,而是创建一个控制器操作,以响应带有图像数据的 http 请求,并设置 src 以使用适当的 id 调用该操作。 (3) 您已经展示了如何将
ImageData属性写入页面;使用相同的方法为href属性编写ImageUrl属性。
标签: asp.net sql-server asp.net-mvc-5