Ran*_*age 4 blazor blazor-server-side blazored
似乎在标准 Blazor 服务器应用程序中,除了开发环境之外,没有正确引用 _content 文件夹项。例如,此引用在任何非开发环境中都失败:
来自_Host.cshtml:
<link href="_content/Blazored.Typeahead/blazored-typeahead.css" rel="stylesheet" />
Run Code Online (Sandbox Code Playgroud)
Repro,以 Blazored-toast 库为例(但任何静态文件引用似乎都有这个问题):
创建一个新的 Blazor 服务器项目 (dotnet new blazorserver)
我缺少什么可以让这个引用在其他环境中工作?
当应用程序发布时,使用 Razor 类库中的静态资产开箱即用。你只需要<link href="..." />像你一样包含静态内容。
但是,当从构建输出 (dotnet run) 或通过 Visual Studio 中的 F5 运行应用程序时,您必须确保为给定环境启用了 StaticWebAsset 功能。
默认情况下,它仅在开发环境中启用。您可以通过确保你叫无条件地打开该功能UseStaticFiles,并呼吁UseStaticWebAssets在Program.CreateHostBuilder。
因此,请确保您使用的应用程序具有:
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
...
app.UseStaticFiles();
...
}
Run Code Online (Sandbox Code Playgroud)
在你的 Program.cs 中你应该有
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStaticWebAssets();
webBuilder.UseStartup<Startup>();
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1506 次 |
| 最近记录: |