版本
语言

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

UI
Database
Tiered

入门

本教程介绍了如何创建一个新的 ASP.NET Core MVC web . 配置并运行它.

设置你的开发环境

创建第一个项目之前,需要正确的设置你的开发环境.

预先要求

你需要安装以下工具:

1 只要支持.NET Core和ASP.NET Core,就可以使用其他编辑器代替Visual Studio.

2 Yarn v2 的工作方式不同,不受支持.

安装ABP CLI

ABP CLI是一个命令行页面,用于自动执行一些基于ABP的应用程序的常见任务.

ABP CLI是ABP框架一个免费开源的工具.

你需要使用以下命令安排ABP CLI:

dotnet tool install -g Volo.Abp.Cli

如果你已经安装,你可以使用以下命令更新到最新版本:

dotnet tool update -g Volo.Abp.Cli

创建新项目

本文假设你使用 MVC / Razor Pages 做为UI框架 MongoDB 做为数据库提供程序,对于其它选项,你可以更改文档顶部的首选项.

使用ABP CLI创建一个新项目

使用ABP CLI的 new 命令创建新项目:

abp new Acme.BookStore -d mongodb --tiered  --mobile react-native
  • 此命令还会在解决方案文件夹内创建一个React Native移动应用程序. 如果你不想要它,可以安全地删除它或从abp new命令中删除--mobile react-native选项, 以使其完全不包含在解决方案中.

  • -d 指定数据库提供程序, 本例中是 mongodb.

  • --tiered 参数用于创建n层解决方案,其中身份验证服务器层,UI层和API层在物理上是分离的.

你可以使用不同级别的命令空间; 例如. BookStore, Acme.BookStore or Acme.Retail.BookStore.

ABP CLI 命令 & 选项

ABP CLI文档涵盖了ABP CLI的所有可用命令和选项. 本文档使用应用程序启动模板创建新的Web应用程序. 有关其他模板,请参见ABP启动模板文档.

或者,您可以从ABP Framework网站中选择"直接下载"选项卡创建新的解决方案.

解决方案结构

创建项目后你会有以下解决方案目录和文件:

在Visual Studio中打开 .sln 文件时,将看到以下解决方案结构:

vs-default-app-solution-structure

关于解决方案中的项目

根据你的UI,数据库和其他选项,你的解决方案的结构可能略有不同.

该解决方案具有分层结构(基于Domain Driven Design), 并包含配置好的的单元&集成测试项目.

集成测试项目已配置为每个测试创建的内存中的MongoDB数据库(使用的Mongo2Go库).

请参阅应用程序模板文档详细了解解决方案结构.

启动模板默认在 .MongoDB 项目中禁用了工作单元事务. 如果你的MongoDB服务器支持事务,你可以手动启用工作单元的事务:

Configure<AbpUnitOfWorkDefaultOptions>(options =>
{
    options.TransactionBehavior = UnitOfWorkTransactionBehavior.Enabled;
});

创建数据库

连接字符串

检查 .IdentityServer.HttpApi.Host 项目下 appsettings.json 文件中的 链接字符串:

"ConnectionStrings": {
  "Default": "mongodb://localhost:27017/BookStore"
}

该解决方案被配置为在你的本地计算机中使用 MongoDB,因此你需要启动并运行一个MongoDB服务器实例或者将连接字符串更改为另一个MongoDB服务器.

初始化种子数据

该解决方案附带一个 .DbMigrator 控制台应用程序,该应用程序为初始数据提供了种子. 它对于开发以及生产环境都很有用.

.DbMigrator 项目有自己的 appsettings.json.如果你更改了其他项目的 appsettings.json,也应该更改这个.

右键点击 .DbMigrator 并选择 设置为启动项目.

set-as-startup-project

按F5(或Ctrl+F5)启动应用程序,你会看到以下输出:

db-migrator-output

数据库创建后会初始化种子数据, 其中包含用于登录的 admin 用户. 所以你至少使用 .DbMigrator 一次.

运行应用程序

确保 .IdentityServer 是启动项目,运行应用程序后会在你的浏览器打开一个 login 页面.

在Visual Studio中使用Ctrl+F5(而不是F5)运行应用,如果你不用于调试,这会减少启动时间.

你可以登录,但是不能在这里进入主应用程序,它仅是验证服务器.

确保 .HttpApi.Host 是启动项目,运行应用程序后会在你的浏览器打开一个 Swagger UI 页面.

swagger-ui

这里是Web应用程序使用的API应用程序.

最后确保 .Web 是启动项目,运行应用程序后会在你的浏览器打开一个 welcome 页面.

mvc-tiered-app-home

点击 login 按钮重定向到 Identity Server 来登录应用程序.

bookstore-login

输入用户名 admin,密码 1q2w3E* 登录到应用程序,应用程序已经启动并执行,你可以基于此启动模板开始开发应用程序.

移动开发

当你创建一个新的应用程序时. 可以添加-m react-native选项以在解决方案中包含 react-native项目. 这是一个基础的React Native启动模板,用于开发与基于ABP的后端集成的移动应用程序.

请参阅"React Native入门"文档了解如何配置和运行React Native应用程序.

下一步是什么?

Web应用程序开发教程

本页对您有帮助吗?
请进行选择。
感谢您的宝贵意见!

请注意,虽然我们无法回复反馈意见,但我们的团队会根据您的意见改进体验。

在本文档中
Mastering ABP Framework Book
掌握 ABP 框架

本书将帮助你全面了解框架和现代Web应用程序开发技术。