【问题标题】:CSS files not found in ASP.NET 5在 ASP.NET 5 中找不到 CSS 文件
【发布时间】:2015-10-12 10:18:49
【问题描述】:

我在 wwwroot 中创建了一个 Content 文件夹,因为我读到应该在文档中添加样式表和脚本等客户端内容,但是当我添加到我拥有的视图并构建项目时,它找不到文件。这样做的正确方法是什么?

<link href="~/content/style.css" rel="stylesheet" />

我很确定 wwwroot 已正确添加到 project.json。

"webroot": "wwwroot"

【问题讨论】:

  • 您是否检查了区分大小写?
  • 是的,这是我做的第一件事
  • @Arvaan 指向静态文件的 URL 不区分大小写。
  • 好的。这是我脑海中的第一个想法
  • 您是否尝试删除波浪号?看看这个答案 - stackoverflow.com/a/5559597/1454538

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


【解决方案1】:

您需要在 Startup 中启用 ASP.NET Core 静态文件处理:

public void Configure(IApplicationBuilder application)
{
    // Add static files to the request pipeline.
    application.UseStaticFiles();

    // Add MVC to the request pipeline.
    application.UseMvc();
}

Visual Studio 2017 (csproj)

除非您使用 Microsoft.AspNetCore.All 包,否则您还需要将此添加到您的 csproj:

<PackageReference Include="Microsoft.AspNetCore.StaticFiles" Version="2.0.0" />

Visual Studio 2015 (xproj + project.json)

您还需要将其添加到您的 project.json:

"dependencies": {
    "Microsoft.AspNetCore.StaticFiles": "1.0.0"
    // ...Omitted
}

【讨论】:

  • 我收到一个错误,指出 IApplicationBuilder 不包含 UseStaticFiles 的定义。
  • 你还需要在你的project.json中添加一个依赖。我已经更新了答案。
【解决方案2】:

波浪号 ("~") 符号转换为基本 url,但这发生在服务器代码中,通过服务器控件或其他服务器端 url 操作函数。

对于客户端 URL,删除波浪号。

【讨论】:

    猜你喜欢
    • 2015-03-28
    • 1970-01-01
    • 2015-05-16
    • 1970-01-01
    • 2020-12-22
    • 2015-05-07
    • 1970-01-01
    • 2021-08-17
    相关资源
    最近更新 更多