如何在web浏览器中运行MAUI Blazor应用程序?我已经使用VS MAUI与Blazor样例项目
当你第一次听到MAUI Blazor时,很容易想到"在桌面/移动应用程序中运行的web应用程序"。我就是这么想的,我相信很多人也是这么想的。事实证明,MAUI Blazor更像是"使用Blazor/Razor语法而不是XAML开发的原生桌面/移动应用程序"。
所以简短的答案是否定的,你不能在web浏览器中运行MAUI Blazor应用程序。
最初,基本上有两种托管Blazor的基本模型,Blazor服务器和Blazor WASM (Web Assembly)。在撰写本文时,MAUI Blazor使用了第三种托管模式Blazor Hybrid。Blazor Hybrid是一种完全不同的托管模式。使用Hybrid,您可以访问设备的本地功能。这意味着你需要针对每个目标平台(Android, Apple, Windows等)编写不同的代码库。因为你的Hybrid代码库可以瞄准并依赖于特定于平台的功能,所以你不能只是将MAUI Blazor移动到web应用程序中。
如果你仔细设计你的应用程序,使用你的MAUI Blazor组件创建一个Blazor服务器或Blazor WASM应用程序应该不会太难。如果您非常小心,您可能几乎不需要更改代码。但是仅仅在浏览器中运行MAUI Blazor是不可能的。
有关Blazor托管模型的MSDN文章。
我还没有尝试过MAUI,但它不是反过来的吗?MAUI Blazor应该允许你在MAUI应用程序中使用Blazor组件。
这基本上给了你Blazor绑定魔法而不是XAML绑定魔法,同时仍然让你访问设备特定的功能(例如,在移动设备上,你可以检查你是否有网络连接或GPS或其他)
我可能错了
在问完我的问题后,我确实回顾了已经可用的可能答案。我找到了一个一针见血的。我的答案是否定的——你不能在Blazor Web应用程序中使用XAML。你可以用Blazor MAUI创建一个本机应用程序,在Windows上运行,并混合使用html和css的Blazor/Razor页面以及使用XAML和c#的页面。
当你在windows上运行maui blazor时,它已经在Edge浏览器上打开了。你可以打印和检查内容