Skip to content

服务端

服务端代码,存放在api文件夹内,建议使用vs2022进行开发,框架沿用了abp framework的大部分功能,包括依赖注入、验证、授权等。

项目分层介绍

  • PurestAdmin.Api.Host

项目入口、启动层,所有关于接口的设置都放在这里,比如请求中间件、授权策略等

  • PurestAdmin.Application

应用层,本项目所有的接口都是从这一层生成的。根据动态规则,自动生成api接口,这里也是项目主要的业务逻辑层

  • PurestAdmin.BackgroundService

后台服务层,apb里的后台作业job和后台工作者worker都应该放在这里。同时提供了IBackgroundJobStore的持久化实现

  • PurestAdmin.Core

核心层,此层不参与任何业务内容,负责基础功能的实现,以及组件的封装、扩展等

  • PurestAdmin.Multiplex

复合层,多元化的层,作用:为application和host层提供价值,和core层不同的是,这里是参与业务内容的,别的层不合适存放的东西都可以放在这一层

  • PurestAdmin.Multiplex.Contracts

复合层的契约层,这里定义的接口需要在Multiplex层实现,相当于复合层方法的抽象层,任何Multiplex层内被需要的功能,都需要在这里抽象成接口。存放枚举或者常量等

TIP

这里抽象出来的接口,可能会有很多是替换了原abp的功能,比如ICurrentUser接口,将来可能还有很多,在使用时要注意

  • PurestAdmin.SqlSugar

ORM层,因为本项目使用了SqlSugar,并且也没打算支持替换,所以名字就叫PurestAdmin.SqlSugar,存放实体和扩展实体,当然,如果你不擅长使用,可以另外使用其他的ORM框架,根据abp提供的规则,进行注入即可

  • PurestAdmin.Zero

本项目是一个控制台项目,主要是用来做种子数据初始化的。当您创建数据库并使用脚本创建好表之后,可以先运行这个控制台项目,把种子数据初始化到数据库中,这样就可以快速使用了。您也可以在这里定制您自己的种子数据

如何使用

本项目完全遵循abp framework的框架规则,详情请参照abp官方文档,后续会有专门的一节讲述如何进行快速二次开发

LGPL-3.0 License.