项目

本文档有多个版本。请选择最适合您的选项。

UI
Database

微服务教程 第四部分:创建初始的 Ordering 服务

在上一部分中,我们使用 ABP Suite 实现了目录微服务的功能。本部分我们将创建 Ordering 微服务,后续部分将介绍如何手动实现其功能。

创建 Ordering 微服务

解决方案资源管理器 面板中右键单击 services 文件夹,选择 添加 -> 新建模块 -> 微服务 命令:

abp-studio-add-new-microservice-command

此命令将打开一个新对话框,用于定义新微服务的属性。你可以使用以下值创建一个名为 OrderingService 的新微服务:

abp-studio-add-new-microservice-dialog

点击 下一步 按钮后,你将进入数据库提供程序选择步骤。

选择数据库类型

在此步骤中,你可以选择新微服务要使用的数据库提供程序:

abp-studio-add-new-microservice-dialog-database-step-mongo

选择 MongoDB 选项并进入 下一步

附加选项

abp-studio-add-new-microservice-dialog-additional-options-step

在此步骤中,你可以为新微服务选择附加选项。可以保留默认设置,然后点击 创建 按钮。

至此,ABP Studio 将创建新的微服务,并为你安排好所有的集成和配置。

集成到解决方案

在此步骤中,我们可以选择将新微服务集成到解决方案其他组件的选项:

abp-studio-add-new-microservice-dialog-integration-step

ABP Studio 会智能地为你选择合适的值,但你仍需仔细检查这些选项,因为它们将直接影响本教程后续部分的内容。

确保选项配置与上图一致,然后点击 下一步 按钮。

探索新的 Ordering 微服务

本节我们将从整体上考察新的微服务。

理解解决方案结构

与目录微服务一样,Ordering 微服务是一个包含多个项目的 .NET 解决方案。你可以在 解决方案资源管理器 面板中看到解决方案结构:

abp-studio-solution-explorer-ordering-microservice

  • CloudCrm.OrderingService 是你将实现服务的主要项目。通常包含你的实体仓储应用服务、API 控制器等。
  • CloudCrm.OrderingService.Contracts 项目可以与其他服务和应用程序共享。通常包含应用服务的接口、数据传输对象,以及你可能希望与此微服务客户端共享的其他类型。
  • CloudCrm.OrderingService.Tests 用于为此微服务构建单元测试和集成测试。

运行新服务

你可以使用 ABP Studio 的 解决方案运行器 运行解决方案。它也会将新的 Ordering 服务作为解决方案的一部分运行。

在运行解决方案之前,请确保所有应用程序都已构建。如果不确定,请在 解决方案资源管理器 面板中右键单击根项目 (CloudCrm),然后选择 生成 -> 图形生成 命令。

点击解决方案根目录附近的 播放 按钮:

abp-studio-run-solution

浏览 Ordering 服务

应用程序启动后,你可以右键单击 CloudCrm.OrderingService 应用程序并选择浏览,在 ABP Studio 预集成的浏览器中打开它。你可以在 Swagger UI 中看到 Orders 控制器:

abp-studio-browse-ordering-service

打开 Ordering 数据库

你可以使用 SQL Server Management Studio 或任何其他工具连接到 Ordering 服务的数据库。将 localhost,1434 作为 服务器名称,选择 SQL Server 身份验证 作为 身份验证 类型,使用 sa 作为 登录名myPassw@rd 作为 密码 值。你可以在 Ordering 微服务的 .NET 解决方案的 CloudCrm.OrderingService 项目的 appsettings.json 文件中找到这些值:

sql-server-management-studio-databases-2

类似地,Ordering 服务的数据库最初只有三个表。第一个用于 Entity Framework Core 的迁移系统,另外两个用于 ABP 的分布式事件总线,以便使用发件箱和收件箱模式正确应用事务性事件。你不需要关心这些表,因为它们由 Entity Framework Core 和 ABP 创建和管理。

总结

在本部分中,我们创建了初始的 Ordering 微服务。我们将在下一部分中实现其功能。


在本文档中