Blazor目前有两种托管模式,一种是Server-Side模式,一种是WebAssembly模式。官方首先支持的是Service-Side模式,使用WebAssembly模式,需要更新到最新版VS2019。小编目前的精力是更多的专注于Blazor-WebAssembly模式的研究,所以本系列文章只会对Server-Side模式做简要说明。
WebAssembly模式(也可叫做Client-Side模式),WebAssembly前文已经说了很多了,本文不再做额外讨论。我们主要来看一下ASP.NET Core Blazor是如何实现WebAssembly模式的。Blazor启动后,会将依赖项、.NET运行时以及应用组件下载浏览器,应用将在浏览器上直接运行。其交互如图所示:
同时其UI更新和事件处理也在统一进程中进行,如下图所示:
Server-Side模式于2019年9月发布,其目的是使得ASP.NET Core 应用中在服务器上执行应用。其交互如图所示:
UI 更新、事件处理和 JavaScript 调用是通过 SignalR 连接进行处理。如下图所示: