大家好,我正在尝试创建一个ASP.net Core 2.0 Web应用程序;我已将静态文件放置在名为Content的文件夹中。
我给出了以下路径:
<link href="@Url.Content("../Content/css/style.css")" rel="stylesheet">
加载视图时出现404-找不到错误。但是,GET请求路径正确,并且文件存在于同一路径中。这是执行GET请求的路径:
http://localhost:49933/Content/css/style.css
我找到了解决方案,要求我更改web.config文件中的设置,但是.Net Core 2.0没有。我用过MVC。 web.config文件对IIS来说不是很重要吗?
答案 0 :(得分:10)
您应该将要公开的静态文件放在var _this = this;
var value = el.getValue();
if (value.match(/[^а-яА-ЯёЁ\n0-9,.!():;@&#%+_/\'\" -]/ig) === null) {
_this.getViewModel().set('myMaxLength', 60);
_this.getViewModel().set('length', value.length);
} else if (value.match(/[^a-zA-Z\n0-9,.!():;@&#%+_/\'\" -]/ig) === null) {
_this.getViewModel().set('myMaxLength', 170);
_this.getViewModel().set('length', value.length);
} else {
_this.getViewModel().set('myMaxLength', 60);
_this.getViewModel().set('length', value.length);
}
下,然后相应地引用它们,例如
请参见Static files in ASP.NET Core
wwwroot
如果要在<link rel="stylesheet" href="~/css/style.css" asp-append-version="true" />
之外提供静态文件,则需要按以下方式配置静态文件中间件:
wwwroot
然后您可以使用与当前相同的标记:
public void Configure(IApplicationBuilder app)
{
app.UseStaticFiles(); // For the wwwroot folder
app.UseStaticFiles(new StaticFileOptions
{
FileProvider = new PhysicalFileProvider(
Path.Combine(Directory.GetCurrentDirectory(), "Content")),
RequestPath = "/Content"
});
}
有关更多信息,请参见Serve files outside of web root。