You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改Maui Blazor Hybrid应用当前工作目录至wwwroot路径

在MAUI Blazor Hybrid中获取wwwroot文件夹路径

GetCurrentDirectory()返回系统目录是因为MAUI应用的工作目录默认指向系统路径,而非项目的wwwroot目录。可以通过以下几种方式获取正确的wwwroot路径:

方法一:使用AppContext.BaseDirectory拼接路径

在MAUI项目的任何代码文件(包括共享类、Blazor组件的代码后台)中,都可以通过AppContext.BaseDirectory获取应用的基础部署目录,再拼接wwwroot得到目标路径:

using System.IO;

var wwwrootPath = Path.Combine(AppContext.BaseDirectory, "wwwroot");

这个路径在不同平台上会自动适配对应的应用部署目录,确保能正确定位到wwwroot文件夹。

方法二:在Blazor组件中注入IWebAssemblyHostEnvironment

如果是在Blazor组件内获取路径,可以注入IWebAssemblyHostEnvironment并使用其WebRootPath属性,该属性直接指向wwwroot目录:

@inject IWebAssemblyHostEnvironment HostEnv

@code {
    protected override void OnInitialized()
    {
        var wwwrootPath = HostEnv.WebRootPath;
        // 使用路径进行后续操作
    }
}

确保wwwroot资源正确部署

在使用上述方法前,需要确认wwwroot下的文件配置正确:

  • 选中wwwroot内的文件(或整个文件夹)
  • 在属性窗口中设置:
    • 生成操作:MauiAsset
    • 复制到输出目录:如果较新则复制

这样才能保证wwwroot文件夹及其内容被正确打包到应用中,路径定位才会生效。

内容的提问来源于stack exchange,提问作者DaveK

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 22:10:30