ABP框架入门
技术要求
IDE/编辑器
.NET 6 SDK
数据库准备
安装 ABP CLI
dotnet tool install -g Volo.Abp.Cli
dotnet tool update -g Volo.Abp.Cli
创建新解决方案
官网配置和下载

值得一提的是此页面上的选项,不同的配置会影响到不同的架构、结构和工具。
- Project name是 Visual Studio 解决方案(
.sln
文件)的名称,也是项目的根命名空间。 - 对于Project type,有两个选项,如下所示:
- Module模板用于创建可重用的应用模块。
- Application模板用于构建 Web 应用程序。
- MVC/Razor Page
- Angular
- Blazor WebAssembly
- Blazor Server
您可以选择最适合您的应用要求。我们将在本书的第 4 部分,用户界面和 API 开发中介绍MVC/Razor 页面和Blazor选项。您可以在 ABP 的官方文档中了解有关 Angular UI 的更多信息。在这里,我选择MVC/Razor Page选项作为示例。
- Entity Framework Core
- MongoDB
使用 ABP CLI
new
命令创建新的解决方案。打开命令行终端并在空目录中键入以下命令:abp new ProductManagement
ProductManagement
是解决方案名称。此命令默认使用带有 EF Core 的 SQL Server LocalDB 和 MVC/Razor 页面 UI 创建 Web 应用。如果我想指定选项,我可以重写相同的命令,如下所示:abp new ProductManagement -t app -u mvc -d ef -dbms SqlServer --mobile none
--connection-string
参数,如下例所示:abp new ProductManagement -t app -u mvc -d ef -dbms SqlServer --mobile none --connection-string "Server=(LocalDb)\\MSSQLLocalDB;Database=ProductManagement;Trusted_Connection=True"
ProductManagement
。下一节将展示如何运行此解决方案。运行解决方案
ProductManagement.sln
、创建数据库并运行 Web 应用程序。您将看到如下图所示的解决方案结构:
ProductManagement.Web
是 Web 应用程序。ProductManagement.DbMigrator
用于应用数据库迁移和种子数据初始化。
连接字符串
ProductManagement.Web
和ProductManagement.DbMigrator
项目的appsettings.json
文件中定义,包括服务器、数据库名称和凭据。如以下代码片段所示:LocalDb
,一个轻量级、与 SQL Server 兼容的数据库。它安装在 Visual Studio 中。如果要连接到另一个 SQL Server 实例,需要更改连接字符串。创建数据库
Add-Migration
和Update-Database
命令来管理数据库更改。ProductManagement.DbMigrator
是一个控制台应用程序,可简化在开发和生产环境中创建和迁移数据库。它还提供数据初始化,比如创建默认登录使用到的admin
用户和角色。ProductManagement.DbMigrator
项目并选择设置为启动项目命令。然后,使用Ctrl+F5运行项目,无需调试即可运行。ProductManagement.DbMigrator
目录中打开一个命令行终端并执行dotnet run
命令。下次,您就可以像往常一样在 IDE 中运行它。运行 Web 应用程序
ProductManagement.Web
为启动项目,并使用Ctrl+F5运行它(无需调试即可启动)。温馨提示:Ctrl+F5,不调试运行

默认用户名是
admin
,默认密码是1q2w3E*
。可以在登录之后进行更改。探索预构建模块
译者点评:本小结非常之简单,是针对小白用户,对于大部分读者,我感觉都是可以快速过一遍。
账户模块
身份模块


租户管理模块
概括
ABP框架入门的更多相关文章
- 基于ASP.NET MVC的ABP框架入门学习教程
为什么使用ABP 我们近几年陆续开发了一些Web应用和桌面应用,需求或简单或复杂,实现或优雅或丑陋.一个基本的事实是:我们只是积累了一些经验或提高了对,NET的熟悉程度. 随着软件开发经验的不断增加, ...
- ABP框架入门踩坑-配置数据库表前缀
配置数据库表前缀 ABP踩坑记录-目录 本篇其实和ABP关系并不大,主要是EF Core的一些应用-.-. 起因 支持数据库表前缀应该是很多应用中比较常见的功能,而在ABP中并没直接提供这一功能,所以 ...
- ABP框架入门踩坑-添加实体
添加实体 ABP踩坑记录-目录 这里我以问答模块为例,记录一下我在创建实体类过程中碰到的一些坑. 审计属性 具体什么是审计属性我这里就不再介绍了,大家可以参考官方文档. 这里我是通过继承定义好的基类来 ...
- ABP框架入门踩坑-配置User Secrets
配置User Secrets ABP踩坑记录-目录 起因 因为以往习惯在User Secrets中保存连接字符串之类信息,但当我把连接字符串移到secrets.json中后,却发现在迁移过程中会报如下 ...
- ABP框架入门踩坑-使用MySQL
使用MySQL ABP踩坑记录-目录 起因 因为我自用的服务器只是腾讯云1核1G的学生机,不方便装SQL Server,所以转而MySQL. 这里使用的MySQL版本号为 8.0. 解决方案 删除Qi ...
- Asp.NET Core2.0与 EF的ABP框架入门视频教程
https://ke.qq.com/course/287301?from=qqchat&ADUIN=1187219916&ADSESSION=1522716499&ADTAG= ...
- ABP入门系列(1)——学习Abp框架之实操演练
作为.Net工地搬砖长工一名,一直致力于挖坑(Bug)填坑(Debug),但技术却不见长进.也曾热情于新技术的学习,憧憬过成为技术大拿.从前端到后端,从bootstrap到javascript,从py ...
- ABP CORE 框架入门视频教程《电话薄》基于 Asp.NET Core2.0 EF Core
ABP框架简介 ABP是"ASP.NET Boilerplate Project (ASP.NET样板项目)"的简称. ASP.NET Boilerplate是一个用最佳实践和流行 ...
- C#高级知识点&(ABP框架理论学习高级篇)——白金版
前言摘要 很早以前就有要写ABP高级系列教程的计划了,但是迟迟到现在这个高级理论系列才和大家见面.其实这篇博客很早就着手写了,只是楼主一直写写停停.看看下图,就知道这篇博客的生产日期了,谁知它的出厂日 ...
随机推荐
- 采用WPF开发第二版OFD阅读器,持续完善中,敬请期待!
本人研究OFD多年,采用C#和QT开发了一系列ofd相关软件.在这些产品中,阅读器始终占据着非常重要的位置.可以说,阅读器是直接面向最终客户的产品.是集OFD各类知识之大成的产品.市面上的阅读器产品林 ...
- Python执行机制
1.4 Python执行机制 Python中IDLE是其自带的集成开发工具(IDE:同时拥有编辑.编译.调试.运行等多种功能的集成工具),并且它也是Python自带的编译器和解释器. 1.4.1 Py ...
- final, finally, finalize的区别?
final 用于声明属性,方法和类,分别表示属性不可变,方法不可覆盖,类不可继承.内部类要访问局部变量,局部变量必须定义成final类型.finally是异常处理语句结构的一部分,表示总是执行.fin ...
- spring-boot-learning-REST风格网站
什么是REST风格: Representational State Transfer :表现层状态转换,实际上是一种风格.标准,约定 首先需要有资源才能表现, 所以第一个名词是" 资源&qu ...
- 什么是 Spring 配置文件?
Spring 配置文件是 XML 文件.该文件主要包含类信息.它描述了这些类是如何 配置以及相互引入的.但是,XML 配置文件冗长且更加干净.如果没有正确规划 和编写,那么在大项目中管理变得非常困难.
- jsp:useBean报错The value for the useBean class attribute X is invalid
一.解决方法 1.先检查<jsp:useBean id="dog" class="cn.edu.dgut.el.tools.Dog" scope=&quo ...
- numpy入门—Numpy的核心array对象以及创建array的方法
Numpy的核心array对象以及创建array的方法 array对象的背景: Numpy的核心数据结构,就叫做array就是数组,array对象可以是一维数组,也可以是多维数组: Python的Li ...
- 顺利通过EMC实验(20)
- web移动开发中如何实现图标点击态的蒙层效果
webapp开发中经常需要加入点击二态,即用户点击(tap)页面某个部分时该部分的样式进行相应的变化来相应用户的点击操作,这样能够带来更好的用户体验,今天我们要讨论的是如何给图标加上点击的二态效果. ...
- 前端系列——React开发必不可少的eslint配置
项目需要安装的插件 "babel-eslint": "^8.0.3", "eslint": "^4.13.1", &qu ...