繁体   English   中英

blazor 中的动态延迟加载

[英]dynamic lazy loading in blazor

在 Blazor wasm 项目中,我想动态加载第二个项目,而不知道编译时的项目(.Net5)。 因此,正常的“延迟加载”对我不起作用。 是否有用于此类目的的图书馆? 或示例解决方案

我也在寻找这种能力。 .net 6 中的 static 编译时参考不是很好。

看看 oqtane,他们在 .net 3.1 的运行时在延迟加载方面做了一些工作,不幸的是,他们似乎更多地进入了 nuget 方向,而不仅仅是 dll 的https: //docs.oqtane.org/index.html 852075683: //github.com/oqtane/oqtane.framework/discussions/1076

这里有点晚了,但在 .NET 6 中你可以做到,我做了一个管理器,你可以在其中查看

https://github.com/elgransan/BlazorPluginComponents

一些示例代码

        var componentPackage = "RazorClassLibrary2";
        var component = "Component2";
        var stream = await Http.GetStreamAsync($"{MyNavigationManager.BaseUri}/{componentPackage}/{componentPackage}.dll");
        var assembly = AssemblyLoadContext.Default.LoadFromStream(stream);
        componentType = assembly.GetType(componentPackage + "." + component);
        await DOMinterop.IncludeLink(componentPackage, $"/{componentPackage}/{componentPackage}.styles.css");

文件在服务器中的位置

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM