Blazor Hybrid应用将非wwwroot目录下的文件加入静态资源

以Winfrom为例,创建一个Class

继承BlazorWebView这个类,重写CreateFileProvider这个方法就行。保存后,用新控件替换原来的控件,WPF,MAUI同理,但是MAUI只有Windows平台能用下面的代码。其他平台会报错,找不到文件。

    public class CustomBlazorWebView : BlazorWebView
    {
       
        public override IFileProvider CreateFileProvider(string contentRootDir)
        {
            var pFile = base.CreateFileProvider(contentRootDir);
            //加入自己的静态文件提供程序
            var myFile = new PhysicalFileProvider(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "StaticFiles"));
            if (pFile == null)
            {
                return myFile;
            }
            return new CompositeFileProvider(pFile, myFile);
        }
    }


用新控件替换原来的。

posted @ 2024-01-26 16:23  三寸月光  阅读(27)  评论(0编辑  收藏  举报