ABP vNext电商项目落地实战(一)——项目搭建

news/2024/5/19 22:43:29 标签: .netcore, ABP vNext

一、落地条件:

1. .NET5+版本

2. DDD

3. ABP vNext

4.ABP CLI  (ABP的命令行工具,包括ABP的各种模板)

5.SQL Server

写在前面:我觉得这个框架的文件分层很凌乱,在企业的实际业务场景中,一般都会梳理一套更简洁的框架规范

二、安装ABP CLI

1.打开命令行控制器(win+R,cmd),输入

dotnet tool install -g Volo.Abp.Cli

安装ABP CLI

2.使用CLI创建语句,创建ABP vNext框架项目:

abp new MyEBusiness --dbms sqlserver -u none -o F:\MyProjects\EBusiness.Webapi

项目创建成功

三、借助模板类库DbMigrator 项目创建数据表,以及将种子数据初始化到数据库

1.我们在Domian中创建一个Products文件夹,并添加一个实体类Product

 并在EntityFrameworkCore项目的数据库上下文类DbContext.cs中添加DbSet属性:

 2.将DbMigrator项目设置为启动项并启动,输出窗口如下

数据表Product即创建成功,且模板默认创建了许多Abp开头的数据表,用于记录Abp vNext项目的一些信息

 3.在Domain项目的Products文件夹中创建种子数据类ProductDataSeederContributor.cs存放种子数据(测试数据),然后再次启动DbMigrator项目

 测试数据就会被插入表内:

 四、实现通过接口操作数据(增删改查等)

1.在领域层Domain项目的Products文件夹创建仓储接口IProductRepository,定义接口

2.在仓储层Products文件夹中创建仓储文件类 (我们先通过原始方式访问数据)

 3.在应用层Application、Application.Contracts项目分别创建如下文件

实现数据访问接口(细节就不再贴图,能看到这里的应该都懂)

4.在接口层HttpApi的控制器文件夹创建ProductsController调用IProductService提供的接口

 5.在Web应用UI层HttpApi.Host项目中注册HttpApi层的Module文件。

注:在.NET6.0以及更高版本的ASP .NET core版本中,StartUp.cs文件被移除,那么如何添加中间件、服务等东西呢?

即直接在Program.cs文件的Main函数中添加,如下

 直接启动HttpApi.Host web应用项目

找到我们的Products路由,执行获取数据列表接口

 

,得到我们想要的数据 。

今天的学习就到这里,下篇文章继续深化APB vNext框架项目


http://www.niftyadmin.cn/n/231374.html

相关文章

批处理脚本用法总结

目录一、常用命令二、基本语法1. rem 和 ::2. echo 和 3. pause4. errorlevel5. title6. color7. goto 和 :三、常见用法1. 设置临时环境变量2. 启动CMD执行命令3. 打开环境变量窗口参考资料:批处理(Batch),也称为批处理脚本。顾名思义,批处理…

计数排序的实现

计数排序是非比较排序的一种,是对哈希直接定址法的变形应用,其操作步骤如下: 1.统计相同元素出现的次数。 2.根据统计结果将序列回收到原来的序列中。 拿一组重复元素较多的数组来举例子: 10 11 10 15 14 15…

实验二 对表插入,修改,删除数据

第1关:插入数据 任务描述 本关任务:插入数据 相关知识 使用SQL语句中的Insert into语句完成本关操作。 SQL语句中关键字大小写不区分。 插入的数据需要区分大小写。 性别用m表示男,f表示女。 实验完成要求 根据代码区的提示&#xff0c…

C程序设计语言——八、指针(1)指针和指针变量

目录 目录 一、指针的概念 1、小概念 2、p&i; *pi 3、指向就是通过地址来体现的 4、指针变量 二、变量的两个物理意义 1、指针:一个变量的地址 2、指针变量:专门存放变量地址的变量 3、指针p指向了变量a:p保存了a的地址…

C语言中的小知识点(程序环境和预处理篇(1))

系列文章目录 文章目录系列文章目录[TOC](文章目录)前言一、编译链接是什么?(一)、翻译环境二、预处理的讲解1.预定义符号2.#define定义标识符总结前言 在ANSI C的任何一种实现中,存在两个不同的环境 第一种是翻译环境&#xff0c…

stm32cubemx IAP升级(三)

stm32cubemx IAP升级- UARTDMA实现不定长收发数据 板卡:Nucleo-L412 平台:macbook pro 工具:vscode stm32cubemx stm32cubeProgramer cmake toolchain Stm32CubeMx的配置 选择开启一路串口并配置成DMA,并使能中断,配…

实验五 聚合查询

第1关:查询统计一 实验完成要求 根据代码区的提示,将查询数据的SQL语句书写在对应的代码区中。 注:请务必将select子句中出现的列名小写,顺序必须和题目要求一致 1、查询‘001’号的学生不及格的课程数,列出不及格课…

编辑文件/文件夹权限 - Win系统

前言 我们经常会遇到由于权限不够无法删除文件/文件夹的情况,解决方案一般是编辑文件/文件夹的权限,使当前账户拥有文件的完全控制权限,然后再进行删除,下文介绍操作步骤。 修改权限 查看用户权限 右键文件/文件夹,…