c# - asp.net core RC2 图片不显示

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

我想做的是显示来自网络根文件夹的图像,这就是我尝试做的方式:

下面的类(class)只是实验性的,只是我尝试它的例子。目前,正在读取的文件夹中只有一张图像。 rootPath 也取自:_hostingEnvironment.WebRootPath

 public class GetRandomImageForGalleryView : IGetRandomImageFromFolder
    {
        private string rootPath;
        public GetRandomImageForGalleryView(string rootPath)
        {
            this.rootPath = rootPath;
        }
        public string[] getImage()
        {
            return ReadPhotosFromDirectory();
        }
        private string[] ReadPhotosFromDirectory()
        {

            string[] fileLocations = Directory.GetFiles(rootPath+"\\lib\\Images\\Nature");
            return fileLocations;
        }
    }

这就是我尝试显示它的方式:

@model IGetRandomImageFromFolder
@{ 
    ViewBag.Title = "Gallery";
}
<div class="container">
    <div class="row">
        @{
            foreach (string item in Model.getImage())
            {
                <img src="@item" alt="Image" />
            }
        }
    </div>
</div>

但是没有输出,即使我把它改成<img src="@Url.Content(item)" alt="Image" />仍然没有任何反应。

如果我只输出 @item它将显示图像的路径。 app.UseStaticFiles();也已添加。

所以我的问题是我做错了什么,我错过了什么吗?以及如何正确地做到这一点?

最佳答案

在 wwwroot 文件夹中为图像创建一个文件夹 你可以用这个访问图像

<img src="~/images/123.jpg" />

或使用 url.content

  <img src='@Url.Content("~/images/123.jpg" )'/>

关于c# - asp.net core RC2 图片不显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38147178/

相关文章:

asp.net - Azure Web App - 限制对 API 管理的访问

asp.net - 如何查找 SQL Server 2005 的服务器名称

c# - 如何从应用程序窗口获取/设置鼠标的相对位置?

C# 以数组形式返回 json 结果

html - 对齐 div 的问题

asp.net-mvc-4 - HTML 帮助程序无法识别 "@Html.InlineImage"

c# - 无法理解如何在 ASP.net Core 中处理数据

单击 asp.net 中按钮的 JavaScript 在母版页中不起作用

c# - 如何只读取字符串的一部分来获取驱动器的序列号?

asp.net-mvc - 使用带有 RenderPartial 的 EditorTemplate