通过Blazor使用C#开发SPA单页面应用程序(1)

  • 时间:
  • 浏览:1

通过Blazor使用C#开发SPA单页面应用守护进程(1) - 简介及特点

通过Blazor使用C#开发SPA单页面应用守护进程(2) - 开发环境

通过Blazor使用C#开发SPA单页面应用守护进程(3) - 基础知识

通过Blazor使用C#开发SPA单页面应用守护进程(4) - Ant Design Button

    2019年9月23——25日 .NET Core 3.0即将在.NET Conf上发布! .NET Core的发布及成熟的句子的句子的句子的句子期的句子图片 是什么图片 期的句子是什么重燃了.net守护进程员的热情和希望,而且 .net大咖也在积极的为推动.NET Core而不懈的努力。在这次.NET Core 3.0中一项新的技术也首次再次出现在亲戚亲戚朋友的视野,这很多Blazor。说起Blazor你说歌词 亲戚亲戚朋友无需知晓,但这几年一片热火朝天的Angular,React,Vue等前端技术估计无人不知无人不晓。对Blazor很多Microsoft提供的使用C#构建SPA的技术,真是他姗姗来迟,但带给了亲戚亲戚朋友有有有俩个 与Angular,React,Vue等框架完整版不一样的体验、完整版不一样的架构。

    将会这是有有有俩个 全新的技术,目前学习资料非常有限,我将我本人学习到的内容记录汇总在这里以便查阅,也给感兴趣的童鞋提供参考。

1.    简介

    Blazor是有有有俩个 新的Web UI框架,使用C#,Razor和HTML以及WebAssembly (W3C标准)。它允许您使用C#而都有JavaScript构建交互式Web UI。Blazor应用守护进程由使用C#,HTML和CSS实现的可重用Web UI组件组成。客户端和服务器代码都有用C#编写的,允许您共享代码和库。

2.    在WebAssembly或服务器上运行

    Blazor还都后能 使用WebAssembly直接在浏览器中运行客户端C#代码。将会它是在WebAssembly上运行的真实.NET,很多您还都后能 从应用守护进程的服务器端帕累托图重用代码和库(客户端渲染)。

将会,Blazor还都后能 在服务器上运行您的客户端逻辑。客户端UI事件使用SignalR(实时消息传递框架)发送回服务器。执行完成后,所需的UI更改将发送到客户端并合并到DOM中(服务器端渲染)。

3.    Web Assembly (Wasm)

    基于W3C开放标准,用于在浏览器中运行低级字节代码。使用此标准,亲戚亲戚朋友还都后能 直接在浏览器中运行服务器端语言(Rust,C ++,C#...)而都有Javascript。

    还记得Java applet和Microsoft Silverlight吗,亲戚亲戚朋友前要在浏览器中安装插件来运行Java和C#代码,而且 WebAssembly提供了基本标准,现在亲戚亲戚朋友不前要任何插件,他的二进制格式以.wasm文件表示,都都还都后能 提供接近本机的性能。

4.    建立在开放的Web标准之上

    Blazor使用开放的Web标准,这么插件或代码转换。Blazor适用于所有现代Web浏览器,包括移动浏览器。

    在浏览器中运行的代码在与JavaScript框架相同的安全沙箱中执行。

Blazor 客户端渲染支持的浏览器

浏览者

版本

Microsoft Edge

当前

Mozilla Firefox

当前

Google Chrome, 包括 Android

当前

Safari, 包括 iOS

当前

Microsoft Internet Explorer

不支持 *

* Microsoft Internet Explorer 不支持WebAssembly。

Razor 服务器端渲染支持的浏览器

浏览者

版本

Microsoft Edge

当前

Mozilla Firefox

当前

Google Chrome, 包括 Android

当前

Safari, 包括 iOS

当前

Microsoft Internet Explorer

11x17 *

*前要额外的填充代码 (例如, 可通过Polyfill.io捆绑加进去去承诺)。

5.    单页面应用守护进程(SPA)

    单页面应用守护进程(SPA)是某种生活构建在浏览器中单个页面上的Web应用守护进程,页面块还都后能 动态呈现而无需呈现完整版的页面。

Angular,React,Vue和而且 而且 语言为构建SPA提供了支持,但所有哪几种语言都构建在相同的Javascript语言之上。现在,Microsoft提供了使用C#和Razor页面构建SPA的基础,例如ASP.Net Core中的语法,很多它被称为Blazor。

    Blazor是ASP.Net Core提供的新的Web框架,用于在浏览器中使用C#和WebAssembly标准构建SPA。

    ASP.Net Core是有有有俩个 在Linux,Mac或Windows操作系统上运行的开源Web框架。

6.    JavaScript互操作

    C#代码还都后能 轻松调用JavaScript API和库。在C#中编写逻辑时,您还都后能 继续使用指在于客户端UI中的大型JavaScript库生态系统。当然将会愿意您还还都后能 从 JavaScript 调用 .NET 实例最好的辦法 和静态最好的辦法 。

7.    优点

  • 受益于 .NET 的性能、可靠性和安全性,提供近乎原生的性能,高效且便携
  • 使用 C# 代替 JavaScript 来编写代码。
  • 利用现有的 .NET 库生态系统,亲戚亲戚朋友还都后能 在网页中使用现有的富于.net生态系统功能。
  • 在服务器和客户端之间共享应用逻辑。
  • 始终高效支持 Windows、Linux 和 macOS 上的 Visual Studio。
  • 以一组稳定、功能富于且易用的通用语言、框架和工具为基础来进行生成。
  • 码维护和调试更可靠。

8.    缺点

  • Javascript将会非常成熟的句子的句子的句子的句子期的句子图片 是什么图片 期的句子是什么,而且 组件库将会指在于市场中。
  • 具有Web Assembly标准的Blazor是市场上的新手,前要时间都还都后能 成熟的句子的句子的句子的句子期的句子图片 是什么图片 期的句子是什么,而且 .net是WebAssembly众多实现中的早期版本。