入门

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

设置你的开发环境

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

预先要求

你需要安装以下工具:

你可以也使用其他支持.NET Core 和 ASP.NET Core的编辑器.

安装ABP CLI

ABP CLI是一个命令行页面,用于为基于ABP的应用程序验证和自动化一些任务.

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

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

  1. dotnet tool install -g Volo.Abp.Cli

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

  1. dotnet tool update -g Volo.Abp.Cli

创建新项目

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

使用ABP CLI创建一个新项目

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

  1. abp new Acme.BookStore -t app
  • -t 参数指定 启动模板 名称. app 是一个启动模板名称,包含了预安装并且配置好的ABP模块.

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

解决方案结构

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

从启动模板开始 - 图1

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

vs-default-app-solution-structure

关于解决方案中的项目

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

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

集成测试项目已配置为可与 EF Core & SQLite 内存 database同时使用.

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

创建数据库

数据库连接字符串

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

  1. "ConnectionStrings": {
  2. "Default": "Server=localhost;Database=BookStore;Trusted_Connection=True"
  3. }

该解决方案配置为Entity Framework CoreMS SQL Server一起使用. EF Core支持各种数据库提供程序,因此你可以使用任何受支持的DBMS. 请参阅Entity Framework集成文档了解如何切换到另一个DBMS.

数据库连接字符串

查看.Web项目下appsettings.json文件中的 连接字符串:

  1. {
  2. "ConnectionStrings": {
  3. "Default": "Server=localhost;Database=BookStore;Trusted_Connection=True"
  4. }
  5. }

解决方案使用 Entity Framework CoreMS SQL Server. EF Core支持各种数据库提供程序,因此你可以根据实际需要使用其他DBMS. 如果需要,请更改连接字符串.

应用迁移

该解决方案使用Entity Framework Core Code First 迁移. 你需要应用迁移来创建数据库,有两种方法迁移数据库.

使用DbMigrator应用程序应用迁移

该解决方案包含一个控制台应用程序(在此示例中名为Acme.BookStore.DbMigrator),可以创建数据库,应用迁移和初始化数据. 它对开发和生产环境都很有用.

.DbMigrator项目有自己的appsettings.json. 因此,如果你更改了上面的连接字符串,则还应更改此字符串.

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

set-as-startup-project

按F5(或Ctrl + F5)运行应用程序. 它将具有如下所示的输出:

set-as-startup-project

使用EF Core Update-Database命令

Ef Core具有Update-Database命令, 可根据需要创建数据库并应用挂起的迁移. 右键单击.Web项目并选择设置为启动项目:

右键单击.Web项目并选择设置为启动项目:

set-as-startup-project

打开包管理器控制台(Package Manager Console), 选择.EntityFrameworkCore.DbMigrations项目作为默认项目并运行Update-Database命令:

package-manager-console-update-database

这将基于配置的连接字符串创建新数据库.

使用.Migrator工具是建议的方法, 因为它还能初始化初始数据能够正确运行Web应用程序.

运行应用程序

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

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

bookstore-login

输入用户名 admin,密码 1q2w3E* 登录到应用程序.

bookstore-home

应用程序已经启动并执行,你可以基于该启动模板开发应用程序.

移动开发

ABP平台提供了React Native模板用于开发移动应用程序.

该解决方案默认 react-native 包含了React Native应用程序,如果你不计划使用React Native开发移动应用程序,你可以忽略并删除 react-native 文件夹.

运行在Android模拟器或真机上的React Native应用程序无法连接到 localhost 上的后.要修复此问题,需要在本地IP上运行后端.

React Native host project local IP entry

  • 打开 .HttpApi.Host 文件夹下的 appsettings.json 文件. 将 SelfUrlAuthority 属性的 localhost 替换为你本地的IP地址.
  • 打开 .HttpApi.Host/Properties 文件夹下的 launchSettings.json 文件. 将 applicationUrl 属性的 localhost 替换为你本地的IP地址.

按照**运行HTTP API Host (服务端口)**那样运行后端.

React Native应用程序不信任自动生成的.NET HTTPS证书,你可以在开发期间使用HTTP.

react-native 文件夹打开命令行终端,输入 yarn 命令(我们推荐使用yarn包管理, npm install 在大多数情况下也可以工作).

  1. yarn
  • 打开 react-nativer 文件夹下的 Environment.js 文件. 将 apiUrlissuer 属性的 localhost 替换为你本地的IP地址:

react native environment local IP

确保 issuerapiUrl 与正在运行的 .HttpApi.Host 项目匹配

等到所有node模块加载成功, 执行 yarn start (或 npm start) 命令:

  1. yarn start

等待Expo CLI启动后Expo CLI在 http://localhost:19002/ 地址要开管理页面.

expo-interface

在上面的管理界面中,可以通过使用Expo Client扫描二维码,使用Android模拟器,iOS模拟器或真机来启动应用程序.

请参阅expo.io上的Android Studio模拟器iOS模拟器文档.

React Native login screen on iPhone 11

输入用户名 admin,密码 1q2w3E* 登录到应用程序.

应用程序已经启动并执行,你可以基于该启动模板开发应用程序.

应用程序启动模板 包含租户管理和Identity模块.

下一步是什么?

应用程序开发教程