Asp.net core mvc 未找到css文件-asp.net核心web应用程序

Asp.net core mvc 未找到css文件-asp.net核心web应用程序,asp.net-core-mvc,serving,Asp.net Core Mvc,Serving,我想在一些非常简单的事情上寻求一些帮助。我已经创建了一个asp.net核心web应用程序(我从空选项开始),并且正在逐步构建它。但我的css文件似乎没有被读取或找到。当我启动应用程序时,我可以看到我的html页面看起来不像它应该的样子,当我在控制台下使用edge中的开发人员工具时,会出现一个“HTTP404:not FOUND-服务器没有找到任何与请求的URI(统一资源标识符)匹配的内容。获取-”错误,表明我的css文件确实没有被读取或找到。现在,我的css文件位于项目根目录中名为“css”的文

我想在一些非常简单的事情上寻求一些帮助。我已经创建了一个asp.net核心web应用程序(我从空选项开始),并且正在逐步构建它。但我的css文件似乎没有被读取或找到。当我启动应用程序时,我可以看到我的html页面看起来不像它应该的样子,当我在控制台下使用edge中的开发人员工具时,会出现一个“HTTP404:not FOUND-服务器没有找到任何与请求的URI(统一资源标识符)匹配的内容。获取-”错误,表明我的css文件确实没有被读取或找到。现在,我的css文件位于项目根目录中名为“css”的文件夹下。当我说root时,我的意思是我刚刚创建了一个名为css的文件夹,路径与Program.cs或Startup.cs相同。我的项目中没有wwwroot(似乎asp.net core 2.2默认情况下已经删除了它?),css文件夹也不在那里。按照html页面中的代码,我尝试在“/css”之前添加~

<head>
<link href="/css/site.css" rel="stylesheet" />
</head>

提前感谢您的任何建议或指导


Francesco

之所以发生这种情况,是因为webroot环境与css文件夹当前所在的环境不同。您必须更改webroot或将css文件夹移动到当前webroot。
如果您希望静态文件在web根目录之外提供(例如,在名为
MyStaticFiles
的文件夹中),则通常将wwwroot文件夹设置为environment webroot,其结构如下

-YourProject
--MyStaticFiles
---css
----site.css
--Program.cs
--Startup.cs
您可以使用
app.UseStaticFiles
,请参阅

然后您可以从
http://localhost:8888/StaticFiles/css/site.css


或者

谢谢,我在哪里可以更改webroot,它是否在项目本身的属性下?全部,忽略不计,现在已关闭。
public void Configure(IApplicationBuilder app)
{  
  app.UseStaticFiles(new StaticFileOptions
  {
    FileProvider = new PhysicalFileProvider(
        Path.Combine(Directory.GetCurrentDirectory(), "MyStaticFiles")),
    RequestPath = "/StaticFiles"
  });
}