项目

单层解决方案:项目结构

本文档中提及的某些功能可能在免费版本中不可用。我们使用 * 符号来表示该功能在 团队版更高版本 许可中可用。

本文档解释了 ABP Studio 单层解决方案模板 的项目解决方案和文件夹结构。

本文档假设您已按照 快速开始:使用 ABP Studio 创建单层 Web 应用程序 指南创建了一个新的单层解决方案。(请选择 Entity Framework Core 作为数据库提供程序。)

理解 ABP 解决方案结构

单层解决方案模板设计得简单易懂。它包含一个单独的项目,该项目包含了构建单体应用程序所需的所有必要组件。解决方案结构如下:

单层解决方案资源管理器视图

Acme.Bookstore 是解决方案中主要的 ABP Studio 模块。它也将 ABP Studio 包 Acme.Bookstore 作为宿主应用程序包含在内。

请参考 概念 文档,以获取 ABP Studio 解决方案、模块和包等术语的完整定义。

解决方案结构

如果您基于 快速开始:使用 ABP Studio 创建单层 Web 应用程序 指南创建解决方案,其结构将如下所示:

Visual Studio 中的单层解决方案

文件夹结构

此模板采用单项目结构,将不同的关注点分离到文件夹中,而不是分离到多个项目中。预定义的文件夹如下所示:

单层解决方案文件夹

  • Data: 在此文件夹中定义您的数据库映射(针对 EF CoreMongoDB)和仓储
  • Entities: 在此文件夹中定义您的实体
  • Localization: 在此文件夹中定义您的 UI 本地化键/值。
  • Menus: 在此文件夹中定义您的 UI 菜单项。
  • Migrations: 包含数据库迁移文件。由 EF Core 自动创建。
  • ObjectMapping: 在此文件夹中定义您的对象间映射类。
  • Pages: 在此文件夹中定义您的 UI 页面(Razor Pages)(如果您更喜欢 MVC 模式,请自行创建 ControllersViews 文件夹)。
  • Permissions: 在此文件夹中定义您的权限
  • Services: 在此文件夹中定义您的应用服务

如何运行?

创建新解决方案时,它会自动为您创建初始迁移并运行数据库迁移程序(除非您取消勾选这些选项)。但是,您也可以在项目目录(与 .csproj 文件相同的文件夹)中运行以下命令来创建数据库并填充初始数据:

dotnet run --migrate-database

此命令将为您创建数据库并填充初始数据。然后,您可以使用 ABP Studio 解决方案运行器 来运行应用程序。默认用户名是 admin,密码是 1q2w3E*

解决方案运行器

虽然创建数据库和应用迁移看起来只对关系型数据库有必要,但即使您选择了 NoSQL 数据库提供程序(如 MongoDB),也应运行此命令。在这种情况下,它仍然会填充应用程序所需的初始数据。

另请参阅


在本文档中