笔记源于课堂编写:BiliBili
源视频教程:https://www.bilibili.com/video/BV155411W7yL

一、将项目从搭建到运行

1.1-在官网下载项目

1.1.1首先打开ABP官网进行项目的下载。官网:ABP官网-项目下载
进入官网后,点击导航栏中的【Download】进入下载页面。
007.1-ABP Vue 实现手机服装商城 - 图1
1.1.2-在这个页面选择自己需要的版本和框架。
007.1-ABP Vue 实现手机服装商城 - 图2
007.1-ABP Vue 实现手机服装商城 - 图3
1.1.3-然后进入到这个页面,弹出一个框框,点击【确定】即可下载。
007.1-ABP Vue 实现手机服装商城 - 图4

1.2-配置相关内容

1.2.1-项目下载完毕后会出现一个压缩包,压缩打开文件夹中的【解决方案】即可,然后可以看到有这些文件。
007.1-ABP Vue 实现手机服装商城 - 图5
1.2.2-本次项目运行:【ABPShopingMallMobile.Web.Host】,所以将此项目设为启动项目。
1.2.3-然后需要进行【还原Nuget包】:
(1)右击【解决方案】。
007.1-ABP Vue 实现手机服装商城 - 图6
(2)然后点击【还原Nuget包】。
007.1-ABP Vue 实现手机服装商城 - 图7
1.2.4-然后需要【迁移数据】:
(1)首先找到WebAPI项目中的【appsettings.json】文件并打开。
007.1-ABP Vue 实现手机服装商城 - 图8
(2)修改成自己的连接字符串。

007.1-ABP Vue 实现手机服装商城 - 图9
(3)在【工具】——>【Nuget包管理工具】,打开【程序包管理控制台】,进行一下操作。
007.1-ABP Vue 实现手机服装商城 - 图10
//看到这个提示说明数据库迁移成功了。
007.1-ABP Vue 实现手机服装商城 - 图11
//然后看到数据库已经创建成功了。
007.1-ABP Vue 实现手机服装商城 - 图12

1.2.5-然后需要将【libman.json】还原客户端(当下载的是MVC模式下需要操作此步骤)。
为什么要进行此操作呢,因为不做此操作,会存在页面没样式,向以下这种:
007.1-ABP Vue 实现手机服装商城 - 图13
(1)选择到【libman.json】这个文件;
007.1-ABP Vue 实现手机服装商城 - 图14
(2)然后右击,点击【还原客户端库】即可;
007.1-ABP Vue 实现手机服装商城 - 图15

1.3-运行MVC项目

(1)笔者在这里进行登录的时候,发现无论如何都登录不了,网上搜索也没什么资料,笔者使用的是【火狐浏览器】,然后换了【谷歌浏览器】就可以登录进去了,具体什么原因暂时不知道,小伙伴学习的时候注意一下~
(2)还有很多小朋友不知道登录账户和密码:
账户:123456
密码:123qwe
007.1-ABP Vue 实现手机服装商城 - 图16
007.1-ABP Vue 实现手机服装商城 - 图17

1.4-运行API项目(运行Host项目)

007.1-ABP Vue 实现手机服装商城 - 图18

二、项目记录

2.1-层与层之间的关系

007.1-ABP Vue 实现手机服装商城 - 图19

2.2-DDD-充血模型

  • 充血模型层次结构大多数业务和持久化放在Domain Object里面,Business Logic只是简单封装部分逻辑及控制事务、权限等,这样层级结构就变成Client——>(Business Facode)——>Business Logic——>Domain Object——>Data Access Object

007.1-ABP Vue 实现手机服装商城 - 图20

  • 优点:
    • 面向对象;
    • 符合单一职责,业务逻辑不会很承重;
  • 缺点:
    • 业务逻辑模糊;
    • 不能更好的分模块开发;

2.3-创建表并迁移到数据库

1.在【Core】层,创建视图类
007.1-ABP Vue 实现手机服装商城 - 图21
2.在【EntityFrameworkCore】层找到数据上下文对象,进行编辑;
007.1-ABP Vue 实现手机服装商城 - 图22
3.打开程序包管理器控制器,进行迁移,记住选中【EF】层。然后需要将【ABPShopingMallMobile.Web.Host】这项目设置为启动项目。
(1)输入相关命令:enable-migrations(打开迁移)
007.1-ABP Vue 实现手机服装商城 - 图23
(2)add-migration ‘备注’(添加迁移)
(3)update-database(更新到数据库)
007.1-ABP Vue 实现手机服装商城 - 图24
(4)可以看到数据库中已经创建了刚刚添加的2个表。
007.1-ABP Vue 实现手机服装商城 - 图25

2.4-添加字段约束

1.1导入命名空间
007.1-ABP Vue 实现手机服装商城 - 图26
1.2使用特性方式在字段上添加约束。
007.1-ABP Vue 实现手机服装商城 - 图27
//第二种方法:设置长度
007.1-ABP Vue 实现手机服装商城 - 图28

2.5-在上下文中添加字段约束

1.在ABP中一般不建议使用特性方式配置,因为降低性能,建议在数据上下文中配置。

2.6-视图模型和领域模型

定义:使用视图模型和前端进行交互,让视图模型和领域模型进行分割。
//领域模型
007.1-ABP Vue 实现手机服装商城 - 图29

//视图模型
007.1-ABP Vue 实现手机服装商城 - 图30

2.7-在应用服务层中写逻辑

2.7.1-在【ABPShopingMallMobile.Application】应用服务层中写代码逻辑。
007.1-ABP Vue 实现手机服装商城 - 图31
2.7.2-创建一个接口为【IProductAppService.cs】,需要继承自【IApplicationService】
007.1-ABP Vue 实现手机服装商城 - 图32
2.7.3-创建一个类为【ProductAppService.cs】,需要继承自【ABPShopingMallMobileAppServiceBase】,然后需要实现【IProductAppService】接口,然后需要通过构造函数进行依赖注入,然后写对应的方法。
007.1-ABP Vue 实现手机服装商城 - 图33

上一篇

006.1-DDD实战领域驱动设计

下一篇

007.2-DDD+AbpVNext框架搭建