零、前言

Vue.js 3 比之前的版本更快、更小,而且 TypeScript 的全面开箱即用支持使它成为 Vue.js 的一个更易于维护、更易于使用的版本。 然后,ASP.NET Core 5,这是当今最快的。NET web 框架。 一起,Vue.js 为前端和 ASP.NET Core 5 为后台做了一个强大的组合。 这本书遵循了实践的方法来实现使用 ASP 构建健壮的应用的实际方法.NET Core 5 和 Vue.js 3。 这里的主题并不深入,本书面向的是忙碌的。net 开发人员,他们时间有限,想要用流行的库快速实现一个干净的体系结构。

你将从设置 web 应用的后端开始,在干净的架构、命令查询职责隔离(CQRS)、中介模式和实体框架 Core 5 的指导下。 然后,本书向您展示了如何使用最佳实践构建前端应用,使用 Vuex 进行状态管理,使用 Vuetify UI 组件库,使用 vueidate 进行输入验证,使用 Vue Router 进行延迟加载,以及使用 JWT 认证。 稍后,您将重点关注测试和部署,在 ASP 中执行负载测试等任务.NET Core 5 和部署容器应用到云。 本书中的所有教程都支持 Windows 10、macOS 和 Linux 用户。

在这本书的最后,你将能够构建一个企业全栈的 web 应用,使用最常见的 npm 包 Vue.js 和 NuGet 包 ASP. js。 部署 Vue.js 和 asp.net Core。 使用 GitHub 操作到 Azure 应用服务的 NET Core。

这本书是写给谁的

这本书是为那些忙碌的。net 开发人员准备的,他们想要开始使用 Vue.js 并构建真实世界的全栈企业 web 应用。 开发人员希望使用他们现有的 ASP 知识快速并实用地构建一个概念验证应用.NET Core,以及那些想要使用 TypeScript 和 c#编程语言编写可读且可维护代码的开发人员也会发现这本书很有用。 本书假设读者具有中级水平的。net 知识,并了解 c#编程、JavaScript 和 ECMAScript。

这本书的内容

第一章ASP 入门 NET Core 和 Vue.js,作为对 ASP 当前状态的一个简要概述.NET Core 和 Vue.js 让你对 ASP 的 web 开发有一个大致的了解.NET Core 和 Vue.js。

第二章设置一个开发环境,将教你如何设置你的计算机的开发环境来构建后端和前端 web 应用。 在继续应用开发之前,您将遍历不同的 ide 和文本编辑器来编写代码,并确保一切都已设置好。

第三章asp.NET Core 项目,展示了创建一个 asp.NET Core 项目的一步一步的过程.NET Core 5 Web API 项目。 本章还描述了一个新创建的 ASP. conf 中的默认文件夹和文件.NET Core 5 Web API,特别是Program.csStart.cs,包括依赖服务和中间件。

第四章在 ASP 中应用 Clean Architecture.NET Core 解决方案,教你真实世界中文件、文件夹、项目和 ASP 的组织.NET Core 应用依赖,为你未来的大的和可扩展的 ASP.NET Core 5 企业应用。

第五章,设置 DbContext 和控制器,将教会你如何建立一个数据库,实体框架核心,DbContext,如何编写干净的建筑实体和枚举。 本章还教你如何用 Swagger UI 编写控制器和路由来测试控制器。

第 6 章,深入 CQRS,讲述了 CQRS 模式,中介体模式,以及流行的用于 CQRS 和管道行为的 MediatR NuGet 包。

第七章,CQRS in Action,展示了如何实现 CQRS,使用 FluentValidation 和 AutoMapper,以及编写查询、命令和IServiceCollection

第八章ASP 中 API 版本控制与登录 NET Core,教你 API 版本控制,这对于创建可维护的 API 有时是必要的,但如果做得不正确,可能会有问题。

第九章固位 ASP asp.net Core的集成.NET Core 5 后端与 Vue.js 3 前端。 本章探讨了 ASP 中的认证和授权.NET Core 5 Web API 通过创建和处理 JWT。 然后本章解释如何使用 JWT 构建器,编写自定义 JWT 中间件,开发基本认证,并在 GET、POST、PUT 和 DELETE 方法上添加基于角色的授权。

第 10 章Redis 的性能增强,介绍了 ASP 的内存缓存.NET Core,分布式缓存,Redis 的实现。

第 11 章,Vue.js 基本面 Todo 应用,是完全致力于 Vue.js,节点包管理器(【显示】npm),Vue CLI。 这些工具帮助开发人员根据用户的选项为 Vue.js 项目提供不同的配置。 本章还描述了 Vue 组件的特性以及使用它们可以做什么。

第十二章Using a UI Component Library and Creating Routes and Navigations教你如何使用由不同 Vue.js 社区构建的开源 UI 库。 您将使用 Vue.js 中流行的库之一,这将节省您花费大量时间构建组件。 然后,你将根据最佳实践来设置你的 Vue.js 3 应用的导航和路由。

第 13 章用 ASP 集成 Vue.js 应用 NET Core,说明了如何把 ASP.NET Core Web API 和 Vue.js 应用作为一个单元。 您将了解 CORS 策略如何工作以及如何启用它。

第 14 章,与 Vuex 简化状态管理和发送 HTTP 请求,是关于发送 HTTP 请求和解决问题最常见的问题在大型 web 应用的同步组件与另一个组件的状态。 在大型和复杂的应用中,您需要一个工具来集中应用的状态,并使数据流透明和可预测。

第 15 章,在 Vue.js 中使用 Vuex发送 POST、DELETE 和 PUT HTTP 请求,展示了前端和后端同步获取、删除、创建和更新数据的步骤。 本章以最简单的方式解释了 Vue.js 3 应用的有效状态管理。

第 16 章在 Vue.js 中添加认证,解释了 Vue.js 中认证的设置和 Auth Guard 的编写。 本章还涵盖了编写 HTTP 拦截器和设置应用中的自动登录。

第 17 章,输入验证形式,讨论了安装一个输入验证库称为 Vuelidate,解释了如何使用验证器的形式,以防止用户输入无效的输入。

第 18 章使用 xUnit 编写集成测试*,探讨了如何有效地测试 ASP.NET Core 5 和 Vue.js 应用。 本章是在用户使用应用之前检测应用 bug 的指南。

19 章,自动部署使用 GitHub 行动和 Azure,解释了什么是 GitHub 的行动,在部署应用,以及如何实现自动部署到 Azure 应用服务使用 GitHub 动作。

为了最大限度地了解这本书

你可以安装 Node.js、VS Code、Vue CLI 和。net 5 SDK,或者在相关章节中等待进一步的说明。

请注意您的机器所需的操作系统版本和所需的软件版本。

如果你正在使用这本书的数字版本,我们建议你自己输入代码或通过 GitHub 存储库访问代码(链接在下一节中)。 这样做将帮助您避免任何与复制和粘贴代码相关的潜在错误。

下载示例代码文件

你可以从 GitHub 上的https://github.com/PacktPublishing/ASP.NET-Core-and-Vue.js下载这本书的示例代码文件。 如果代码有更新,它将在现有的 GitHub 存储库中更新。

我们还可以在https://github.com/PacktPublishing/中找到丰富的图书和视频目录中的其他代码包。 检查出来!

下载彩色图片

我们还提供了一个 PDF 文件,其中包含了本书中使用的屏幕截图/图表的彩色图像。 你可以在这里下载:https://static.packt-cdn.com/downloads/9781800206694_ColorImages.pdf

使用的约定

本书中使用了许多文本约定。

Code in text:表示文本中的代码字、数据库表名、文件夹名、文件名、文件扩展名、路径名、虚拟 url、用户输入和 Twitter 句柄。 下面是一个示例:“将下载的WebStorm-10*.dmg磁盘映像文件作为系统中的另一个磁盘挂载。”

一段代码设置如下:

html, body, #map {
 height: 100%; 
 margin: 0;
 padding: 0
}

当我们希望提请您注意代码块的特定部分时,相关的行或项以粗体显示:

[default]
exten => s,1,Dial(Zap/1|30)
exten => s,2,Voicemail(u100)
exten => s,102,Voicemail(b100)
exten => i,1,Voicemail(s0)

任何命令行输入或输出都写如下:

$ mkdir css
$ cd css

粗体:表示新词条、重要词汇或在屏幕上看到的词汇。 例如,菜单或对话框中的单词会像这样出现在文本中。 下面是一个例子:“从管理面板中选择系统信息。”

小贴士或重要提示

出现这样的。

联系

我们欢迎读者的反馈。

一般反馈:如果您对本书的任何方面有疑问,请在邮件主题中提及书名,并发送电子邮件至customercare@packtpub.com

Errata:尽管我们已尽一切努力确保内容的准确性,但错误还是会发生。 如果您在这本书中发现了错误,请向我们报告,我们将不胜感激。 请访问www.packtpub.com/support/errata,选择您的图书,点击勘误表提交链接,并输入详细信息。

盗版:如果您在互联网上发现我们的作品以任何形式的非法拷贝,请提供我们的位置地址或网址。 请通过copyright@packt.com与我们联系,并附上资料链接。

如果你有兴趣成为一名作家:如果你有一个你擅长的话题,并且你有兴趣写作或写一本书,请访问authors.packtpub.com

评论

请留下评论。 一旦你阅读和使用这本书,为什么不在你购买它的网站上留下评论? 潜在的读者可以看到并使用您的公正意见来做出购买决定,我们在 Packt 可以理解您对我们的产品的看法,我们的作者可以看到您对他们的书的反馈。 谢谢你!

更多关于 packt.com 的信息,请访问packt.com。*