EDITION v8.0 - 已更新到 .NET 8
请参阅 更改日志,了解书籍更新和社区贡献。
发布者
Microsoft开发人员部门、.NET 和 Visual Studio 产品团队
Microsoft公司的一个部门
微软路一号
雷德蒙德, 华盛顿 98052-6399
版权 © 2023 归属于微软公司
保留所有权利。 在未经出版商的书面许可的情况下,不得以任何形式或任何方式转载或传输这本书的内容。
本书“按原样”提供,表达作者的观点和看法。 本书中表达的观点、意见和信息(包括 URL 和其他 Internet 网站参考)可能会更改,而不通知。
此处描述的一些示例仅用于说明,并且是虚构的。 无意与任何现实情况关联,也不应作此推测。
Microsoft 和“商标”网页中编号为 https://www.microsoft.com 的商标是 Microsoft 集团公司的商标。
Mac 和 macOS 是 Apple Inc 的商标。
所有其他标记和徽标都是其各自所有者的财产。
作者:
Microsoft公司首席项目经理丹尼尔·罗斯
Microsoft公司高级项目经理杰夫·弗里茨
泰勒·南威克,Microsoft公司高级软件工程师。
Scott Addie,高级内容开发人员,Microsoft公司。
史蒂夫“@ardalis”史密斯,软件架构师和教练,NimblePros.com
介绍
.NET 长期以来一直通过 ASP.NET 支持 Web 应用开发,这是一套全面的框架和工具,用于生成任何类型的 Web 应用。 ASP.NET 有自己的 Web 框架和技术世系,从经典 Active Server Pages (ASP) 开始。 ASP.NET Web 窗体、ASP.NET MVC、ASP.NET 网页等框架以及最近 ASP.NET Core 等框架提供了一种高效且强大的方法来生成 服务器呈现 的 Web 应用,其中 UI 内容在服务器上动态生成,以响应 HTTP 请求。 每个 ASP.NET 框架都满足不同的受众和应用构建理念。 ASP.NET Web窗体在.NET框架的原始版本中发布,使得使用许多桌面开发者熟悉的模式可以进行Web开发,例如具有简单事件处理的可重用UI控件。 但是,ASP.NET 产品/服务都没有提供运行在用户浏览器中执行的代码的方法。 为此,需要编写 JavaScript 并使用多年来逐步淘汰和退出热门的众多 JavaScript 框架和工具之一:jQuery、Knockout、Angular、React 等。
Blazor 是一种新的 Web 框架,它改变了使用 .NET 构建 Web 应用程序的可能性。 Blazor 是基于 C# 而不是 JavaScript 的客户端 Web UI 框架。 可以使用 Blazor C# 编写客户端逻辑和 UI 组件,将其编译为普通 .NET 程序集,然后使用名为 WebAssembly的新开放 Web 标准直接在浏览器中运行它们。 或者,可以在服务器上运行 .NET UI 组件, Blazor 并通过与浏览器的实时连接流畅地处理所有 UI 交互。 与服务器上运行的 .NET 配对时, Blazor 使用 .NET 启用全堆栈 Web 开发。 虽然 Blazor 与 ASP.NET Web 窗体共享许多共同点,例如具有可重用组件模型和处理用户事件的简单方法,但它也建立在 .NET 的基础之上,以提供现代高性能的 Web 开发体验。
本书将 Blazor 以熟悉和方便的方式介绍给 ASP.NET Web 窗体开发人员。 它与 ASP.NET Web 窗体中的类似概念并行引入 Blazor 概念,同时解释了可能不太熟悉的新概念。 它涵盖了广泛的主题和问题,包括组件创作、路由、布局、配置和安全性。 虽然本书的内容主要用于支持新开发,但它还介绍了将现有 ASP.NET Web 窗体迁移到 Blazor 的准则和策略,以便在希望现代化现有应用时使用。
谁应该使用这本书
本书适用于正在寻找可联系到现有知识和技能的 Blazor 介绍的 ASP.NET Web Forms 开发人员。 此书可帮助快速开始使用基于新 Blazor项目,或帮助绘制用于现代化现有 ASP.NET Web 窗体应用程序的路线图。
如何使用这本书
本书的第一部分介绍了 Blazor 是什么,并将其与使用 ASP.NET Web 窗体进行的 web 应用开发进行比较。 然后,该书将介绍各种 Blazor 主题、分章介绍,并将每个 Blazor 概念与 ASP.NET Web 窗体中的相应概念相关联,或完全解释任何全新的概念。 该书还定期参考一个完整的示例应用,该应用在 ASP.NET Web 窗体和Blazor中实现,以展示Blazor功能,并为从 ASP.NET Web 窗体迁移到Blazor提供案例研究。 可以在 Blazor 上找到示例应用(ASP.NET Web 窗体和版本)的这两个实现。
这本书没有涵盖的内容
这本书是介绍 Blazor的,不是全面的迁移指南。 虽然确实提供了关于如何将项目从 ASP.NET Web 窗体迁移到Blazor的指南,但它并不尝试涵盖所有细微和详细的方面。 有关从 ASP.NET 迁移到 ASP.NET Core 的更常规指南,请参阅 ASP.NET Core 文档中的 迁移指南 。
其他资源
可以在Blazor官方主页和https://blazor.net文档中找到。
发送反馈
本书和相关示例不断发展,因此欢迎你的反馈。 如果你正在 <learn.microsoft.com> 上阅读这本书,并且有关于这本书的改进建议,请使用页面底部的反馈部分:
如前面的屏幕截图中突出显示的那样,反馈部分允许你提交以下反馈:
- 本产品:使用 .NET 产品反馈表单。
- 此页面:使用包含页面详细信息的 GitHub 问题模板。
如果要以 PDF 形式阅读这本书,可以通过创建新的 .NET Docs:GitHub 问题 或使用 .NET 体系结构电子书:GitHub 问题模板来提交反馈。