如何在wwwroot中复制图像,或如何引用它们?

时间:2018-09-04 11:39:43

标签: javascript c# asp.net-core bundle

我有一个非常原始的UI应用程序,带有jquery和images文件夹的.netcore。我有此配置,因为我们有一台仅支持javascript / jquery的机器。从VS 2017运行项目后,图像URL不起作用(因为正在wwwroot文件夹中查找)。 如何在wwwroot中复制图像,或以某种方式将其导出,例如捆绑软件?

2 个答案:

答案 0 :(得分:1)

如果文件位于wwwroot以外的其他文件夹中,则可以将其添加为静态文件。

public void Configure(IApplicationBuilder app)
{
    app.UseStaticFiles(); // For the wwwroot folder

    app.UseStaticFiles(new StaticFileOptions
    {
        FileProvider = new PhysicalFileProvider(
            Path.Combine(Directory.GetCurrentDirectory(), "PathToYourFolder")),
        RequestPath = "/PathToYourFolder"
    });
}

访问图像:

<img src="~/PathToYourFolder/first.svg" alt="your image" />

对于js,css文件,您可以使用包。安装

Install-Package BuildBundlerMinifier -Version 2.8.391

之后,在您的Web项目的根目录中创建json文件-bundleconfig.json

[ 
  {
    "outputFileName": "wwwroot/js/myjs.min.js",
    "inputFiles": [
      "FolderOfYourJS/yourJs.js"
    ]
  }

]

这将在wwwroot中js文件夹中的每个build myjs.min.js文件上创建。

答案 1 :(得分:0)

这不起作用:

enter image description here enter image description here enter image description here enter image description here 我尝试使用波浪号,但什么也没有尝试...我认为唯一的方法是在构建将在wwwroot中复制图像的项目时使用cmd命令...

$(document).ready(function () {
ajax.get('/Console/api/something', function (data) {
    for (var i = 0; i < data.length; i++) {
        $('.data-container')
            .append(createTaksLine(data, i));
    }
    })
})

createTaksLine()返回html格式的字符串。