Blazor 是什么?

Blazor 是什么?

技术杂谈小彩虹2021-08-16 17:23:45250A+A-

在本文中,我们将讨论

  • 我们今天如何开发 Web 应用程序?
  • 什么是 Blazor,我们为什么要使用它?
  • 通过安装所需的软件和工具,为 Blazor 应用程序开发设置我们的开发工具。
  • 我们今天如何开发 Web 应用程序?
  • Blazor 是什么?

我们今天如何开发 Web 应用程序?

what is blazor.png

对于服务器端开发,我们使用 C#、Java、PHP 等编程语言。这些是服务器端编程语言。

对于客户端开发,我们使用 Angular、React、Vue 等 JavaScript 框架。毫无疑问,这些 JavaScript 框架是客户端开发的主流框架。 

为了作为开发人员留在业务中并保持竞争力,我们不可避免地要学习服务器端编程语言和客户端编程语言。

但问题是,我们为什么要学习和使用 2 套不同的编程语言和框架。

我们可以将 C# 用于服务器端和客户端开发吗?

why should we use blazor.png

答案是,可以,这正是我们使用 Blazor 的原因。借助 Blazor,我们现在可以使用 C# 而不是 JavaScript 构建交互式 Web UI。C# 代码既可以在服务器上执行,也可以在客户端浏览器中执行。这意味着现有的 .Net 开发人员可以只使用用他们的 c# 技能,而不是学习新的 JavaScript 框架。

浏览器如何执行 C# 代码?

浏览器只理解和执行 JavaScript。我们如何在客户端浏览器中执行 c# 代码? 嗯,答案是 WebAssembly。

blazor and webassembly.png

Blazor 可以使用 WebAssembly 直接在浏览器中运行 C# 代码。不仅仅是 C#,事实上,我们可以使用 WebAssembly 在浏览器中运行任何类型的代码。

WebAssembly 基于开放的 Web 标准。所以它是包括移动浏览器在内的所有现代浏览器的原生部分。这意味着要使 blazor 应用程序正常工作,无需像silverlight 和flash时代那样安装任何特殊插件。

Blazor 托管模型

Blazor 提供 2 种托管模式。Blazor WebAssembly 和 Blazor 服务器。

blazor client and server hosting models.png

Blazor WebAssembly

这也称为客户端托管模型,在此模型中,应用程序直接在 WebAssembly 上的浏览器中运行。因此,应用程序需要的一切,即编译的应用程序代码本身、它的依赖项和 .NET 运行时都被下载到浏览器。我们使用 Blazor WebAssembly 应用程序模板,通过客户端托管模型创建 Blazor 应用程序。

Blazor 服务器

这也称为服务器托管模型,在此模型中,应用程序从 ASP.NET Core 应用程序内在服务器上执行。在客户端和服务器之间,建立了 SignalR 连接。例如,当客户端上发生事件(例如单击按钮)时,有关该事件的信息将通过 SignalR 连接发送到服务器。服务器处理事件并为生成的 HTML 计算差异。整个 HTML 不会再次发送回客户端,它只是通过已建立的 SignalR 连接发送差异部分到客户端。然后浏览器更新 UI。由于仅应用差异部分来更新 UI,因此应用程序感觉更快,对用户的响应也更快。

Blazor 开发工具

安装 .NET Core SDK 3.1 或更高版本

要验证计算机中安装的 .NET Core SDK 列表,请从命令行运行以下命令。

dotnet --list-sdks

可以使用 Visual Studio 2019、Visual Studio Code 或 .NET Core CLI 构建 blazor 应用程序。  可以从以下 URL 下载 Visual Studio 2019

下载 Visual Studio 2019

如果你使用的是 Visual Studio,请确保安装了 asp.net 和 Web 开发工作负载。要验证你是否安装了此工作负载,请单击“工具”,然后选择“获取工具和功能”。

学习Blazor 前你得掌握的技能

  • C#
  • HTML 
  • CSS

Blazor prerequistites.png

点击这里复制本文地址 以上内容由权冠洲的博客整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!

支持Ctrl+Enter提交

联系我们| 本站介绍| 留言建议 | 交换友链 | 域名展示 | 支付宝红包
本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除

权冠洲的博客 © All Rights Reserved.  Copyright quanguanzhou.top All Rights Reserved
苏公网安备 32030302000848号   苏ICP备20033101号-1
本网站由 提供CDN/云存储服务

联系我们