文档章节

【ABP.Net】1.创建项目&介绍框架结构

o
 osc_n6euf5h6
发布于 2019/03/19 18:09
字数 616
阅读 7
收藏 0

精选30+云产品,助力企业轻松上云!>>>

既然已经打开这个页面了,我就不介绍什么是ABP了。哈哈哈,如果想知道,请移驾。反正我是不说。

1.首先打开https://aspnetboilerplate.com/Templates

下载所需要的ABP版本

我选择这个,我们这个demo是做abp+vue的前后端分离。虽然abp有自带的vue,但是我要自己搭一个前端(其实是abp的vue是ts的版本,楼主ts还不是特别会写)。

下载完之后,打开解决方案。

接下来介绍一下这些层

Application 应用层

根据DDD的设计,该层主要做逻辑处理。简单的说就是,所有的 if 都写这里。(这样的解释应该没毛病)

该层在mvvm的模式里把vm转化成dto进行逻辑处理。

Core 领域层

相当于mvc里面的m,所有对接数据库的obj都在这里定义。

如果根据DDD的设计的话,该层还进行数据的存取,比如说,保存一个对象,需要应用层过滤一遍数据,通过了之后,传递dto,把dto映射成core层的实体(以后应该会讲abp集成的automapper),在core层进行数据的保存的动作。

EntityFrameworkCore ORM层(我自己取的名字)

其实就是一个迁移层,ef 这个orm.

在程序包控制台默认项目设置成EntityFrameworkCore ,然后键入Enable-Migrations即可还原数据库。

如下图所示:

 

Migrator 也是一个迁移层

把启动项设置成这个层,然后运行,他会提示你数据库连接字符串,然后键入Y就可以自动生成数据库

该层依赖的是这个配置文件。

 Web.Core 

 

 这一层打开看一下,这个结构是不是跟mvc的结构很相似。没错abp也提供了mvc的模式

Web.Host

启动层,把默认启动项设置成该层,打开就可以发现是一个swagger。

提供了项目中所有的动态API,接下来我们主要是在该层的启动项上做开发。

Web.Mvc

启动层,把默认启动项设置成该层,打开就可以发现是一个基于jquery的web应用。

该层也是vm活动的地方,但是我们做前后端分离,所以该层我们用不到。可以删掉。

Tests

这个是测试单元

介绍完了。项目的地址是https://gitee.com/xuxml/ABP.Learn

o
粉丝 0
博文 500
码字总数 0
作品 0
私信 提问
加载中
请先登录后再评论。
ABP.NET框架

ABP EventBus(事件总线) 摘要:事件总线就是订阅/发布模式的一种实现 事件总线就是为了降低耦合 1.比如在winform中 到处都是事件 触发事件的对象 sender 事件的数据 e 事件的处理逻辑 方法...

大西瓜3721
03/04
0
0
【ABP.Net】2.多数据库支持&&初始化数据库

abp默认连接的数据库是MSSQL,但是在开发过程中往往很多开发者不满足于mssql。 所以这里演示一下把mssql改成postgresql,来进行接下来的系统开发。 abp的orm是用EF的。那么我们就从ef动手。 ...

osc_n6euf5h6
2019/03/19
2
0
Django介绍&工程搭建

Django介绍 1. 简介 Django,发音为[`dʒæŋɡəʊ],是用python语言写的开源web开发框架,并遵循MVC设计。劳伦斯出版集团为了开发以新闻内容为主的网站,而开发出来了这个框架,于2005年7...

osc_3ho2o0i9
2018/06/30
1
0
自已动手做高性能消息队列

前言 本人觉得码农的技术提升应该是从how to do到why do,而项目或产品都是从why do到how to do,按题来,所以呢下面先从大的方面介绍一下消息队列。 消息队列是分布式高并发面目中必不可少的...

yswenli
2018/05/12
0
0
基于DotNet Core的RPC框架(一) DotBPE.RPC快速开始

0x00 简介 DotBPE.RPC是一款基于dotnet core编写的RPC框架,而它的爸爸DotBPE,目标是实现一个开箱即用的微服务框架,但是它还差点意思,还仅仅在构思和尝试的阶段。但不管怎么说RPC是微服务...

假正经哥哥
2017/05/15
0
0

没有更多内容

加载失败,请刷新页面

加载更多

LINUX_VERSION_CODE与KERNEL_VERSION

由于Linux版本的在不断更新,当设备驱动去兼容不同版本的内核时,需要知道当前使用的内核源码版本,以此来调用对应版本的内核API,这两个宏定义在文件 /usr/include/linux/version.h#defin...

osc_5g68egoj
4分钟前
0
0
JVM09-类加载过程

这一篇我们来学习一下JVM中的类加载过程。说到类的加载过程,我们需要先了解一下JVM中类的生命周期。在JVM中类的生命周期有七个阶段。分别是: 加载(Loading):加载是通过类加载器从不同的...

osc_zai0dt9q
5分钟前
0
0
###豪豪豪豪######2020 推荐系统技术演进趋势了解

读知乎文章《推荐系统技术演进趋势:从召回到排序再到重排》笔记: 《推荐系统技术演进趋势:从召回到排序再到重排》这篇文章主要说了下最近两年,推荐系统技术的一些比较明显的技术发展趋势...

osc_lhmderwy
6分钟前
9
0
SpringBoot入门实现RESTFUL API以及用Postman测试

Model @Data@Builderpublic class Article { private Long id; private String author; private String title; private String content; private Date createTime;}......

osc_7ludm6s2
7分钟前
4
0
Leetcode 83 删除排序链表中的重复元素-链表双指针

维护两个指针,第一个指针指向链表没有重复元素的最后一个位置,第二个指针向后扫描,直到末尾。严格来说,在C++中需要手动释放内存。但在算法题或者Java中不需要这么做。 class Solution {...

osc_n1x6m26g
9分钟前
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部