文章插图
你可以在 GitHub 上查看这个 PictureFixer[7] 的代码 。
.NET WebAssembly AOT 编译需要一个额外的构建工具 , 必须作为一个可选的 .NET SDK 工作负载来安装才能使用 。要安装 .NET WebAssembly 构建工具 , 请运行以下命令:
dotnet workload install microsoft-net-sdk-blazorwebassembly-aot
为了在你的 Blazor WebAssembly 项目中启用 WebAssembly AOT 编译 , 在你的项目文件中添加以下属性:<RunAOTCompilation>true</RunAOTCompilation>
然后 AOT 将你的应用程序编译成 WebAssembly , 发布应用程序 。使用 Release 配置发布将确保 .NET IL 链接也被运行 , 以减少发布应用程序的大小 。dotnet publish -c Release
WebAssembly AOT 编译只在项目发布时进行 。当项目在开发过程中运行时 , 它并不使用 。这是因为 WebAssembly AOT 编译可能需要一段时间 。AOT 编译的 Blazor WebAssembly 应用程序的大小通常比作为 .NET IL 的应用程序要大 。在我们的测试中 , 大多数 AOT 编译的 Blazor WebAssembly 应用程序大约大 2 倍 , 不过这取决于具体的应用程序 。这意味着 , 使用 WebAssembly 的 AOT 编译 , 可以用加载时间的性能换取运行时间的性能 。这种权衡是否值得 , 取决于你的应用程序 。
.NET MAUI Blazor 应用Blazor 能够用 .NET 构建客户端 Web UI , 但有时你需要的东西比 Web 平台提供的更多 。有时你需要完全访问设备的本地功能 。现在 , 你可以在 .NET MAUI 应用程序中托管 Blazor 组件 , 以使用 Web UI 构建跨平台的本地应用程序 。这些组件在.NET 进程中原生运行 , 并使用本地互操作通道向嵌入式 Web 视图控件渲染 Web UI 。这种混合方法为你提供了本地和网络的优点 。你的组件可以通过 .NET 平台访问本地功能 , 并呈现标准的 Web UI 。.NET MAUI Blazor 应用程序可以运行在任何 .NET MAUI 可以运行的地方(Windows、Mac、IOS 和 Android) , 尽管我们对 .NET 6 的主要关注是在桌面场景 。
要创建一个 .NET MAUI Blazor 应用程序 , 你首先需要在开发机器上配置 .NET MAUI 。最简单的方法是使用 maui-check 工具 。要安装 maui-check 工具 , 请运行:
dotnet tool install -g Redth.Net.Maui.Check
然后运行 maui-check 来获取 .NET MAUI 工具和依赖 。有关开始使用 .NET MAUI 的其他信息 , 请参考 GitHub 上的 wiki 文档 。一旦一切安装完毕 , 使用新的项目模板创建一个 .NET MAUI Blazor 应用程序:
dotnet new maui-blazor -o MauiBlazorApp
你也可以使用 Visual Studio 创建一个 .NET MAUI Blazor 应用程序:文章插图
.NET MAUI Blazor 应用程序是 .NET MAUI 应用程序 , 它使用 BlazorWebView 控件将 Blazor 组件渲染到一个嵌入式 Web 视图中 。应用程序的代码和逻辑位于 MauiApp 项目中 , 该项目被设置为多目标 Android、iOS 和 Mac Catalyst 。MauiApp.WinUI3 项目用于为 Windows 构建 , 而 MauiApp.WinUI3(Package) 项目则用于为 Windows 生成 MSIX 包 。最终 , 我们希望将对 Windows 的支持合并到主应用程序项目中 , 但现在这些独立的项目是必要的 。
在 MauiApp 项目的 MainPage.xaml 中设置了 BlazorWebView 控件:
<b:BlazorWebView HostPage="wwwroot/index.html"><b:BlazorWebView.RootComponents><b:RootComponent Selector="#app" ComponentType="{x:Type local:Main}" /></b:BlazorWebView.RootComponents></b:BlazorWebView>
该应用程序的根 Blazor 组件在 Main.razor 中 。其余的 Blazor 组件都在 Pages 和 Shared 目录下 。请注意 , 这些组件与默认 Blazor 模板中使用的组件相同 。你可以在你的应用程序中使用现有的 Blazor 组件 , 而不用改变代码 , 或者引用包含这些组件的现有类库或包 。应用程序的静态资源在 wwwroot 文件夹中 。Windows要在 Windows 下运行该应用程序 , 你需要使用 Visual Studio 构建和运行 。
选择 MauiBlazorApp.WinUI3(Package) 项目作为你的启动项目:
文章插图
推荐阅读
- 索尼|PS5现已支持VRR功能:无需系统更新 重启即可
- 进口果味啤酒,目前已经不再生产
- 郑欣宜|34岁星二代再获乐坛大奖,预告年中红馆开个唱,3个月已瘦20斤
- 治疗胃胀的药有哪些
- 翡翠|五版币现在已经升值了,这“四大黑马”都涨了,遇到就收藏起来
- 瘦身瑜伽的练习
- 华为|华为回应元宇宙布局:典型的炒作期 已找到其本质
- 腮红|羊毛卷已过时,22款当下流行发型送给大家,直接剪就对了
- 被子怎么洗?有哪些方法
- 华为|卖车挑战30万辆!华为董事长:目标已很难实现 华为还是新手