在Asp.Net Core和Razor视图中显示来自路径的图像?

时间:2019-03-08 06:50:50

标签: c# razor asp.net-core asp.net-core-mvc asp.net-core-2.0

我正在尝试在MVC View Razor网页中显示商品的图片。

以下内容无效。 ImageLocation仅具有图片编号文件名。

Example: 
Product1.jpg
Product2.jpg
Product3.jpg
Product4.jpg

视图不起作用,只需要显示一个产品图片:

@model ElectronicsStore.Models.Product

@{
    ViewData["Title"] = "Details";
}

<h2>Details</h2>

<div>
    <h4>Product</h4>
    <hr />
    <dl class="dl-horizontal">

        <dt>
            <img src="~/images/@Url.Content(Model.ImageLocation)" alt="Image">
        </dt>
        <dd>

        </dd>
        <dt>
            @Html.DisplayNameFor(model => model.ProductDescription)
        </dt>
        <dd>
            @Html.DisplayFor(model => model.ProductDescription)
        </dd>
    </dl>
</div>

此解决方案尚无法使用,因为它使用的是先前版本的mvc net How to display an image from a path in asp.net MVC 4 and Razor view?

1 个答案:

答案 0 :(得分:1)

这是为了获取目录中的所有图像。当然,您可以根据需要对其进行调整。

我用了这样的东西:

var images = Directory.EnumerateFiles(Server.MapPath("Path"))
                             .Select(fn => "Path" + Path.GetFileName(fn));

并显示它,我将使用:

foreach (var image in (IEnumerable<string>)images)
{
      //Your logic here eg:
      <img class="img" src="@Url.Content(image)" />
}

根据您的需要进行调整