1. 初识ABP

ABP框架

ABP是用于创建现代化Web应用程序的完整体系结构和强大的基础架构,以模块化的方式进行开发,所有模块以nuget包的方式提供,开箱即用,遵循最佳实践和约定,提供SOLID开发经验。

缩写英文中文
SRPThe Single Responsibility Principle单一职责元素
OCPThe Open Closed Principle开放封闭原则
LSPThe Liskov Substituution Principle里氏替换原则
ISPThe Interface Segregation Principle接口替换原则
DIPThe Dependency Inversion Principle依赖倒置原则

目前版本

ASP.NET Boilerplate

ASP.NET Boilerplate(ABP)是一个开放源代码且有据可查的应用框架。它不仅是一个框架,而且提供了一个基于领域驱动设计的强大的体系结构模型,同时考虑了所有最佳实践。

此版本基于.net framework平台开放,支持Asp.Net MVC 5.x和EF6.x,也可以和Asp.Net Core和EF Core一起使用,但依赖性比较臃肿。

开源版:https://aspnetboilerplate.com
企业版: https://aspnetzero.com
源码: https://github.com/aspnetboilerplate
中文文档: https://github.com/ABPFrameWorkGroup/AbpDocument2Chinese

ABP Framework

ABP Framework,也称 ABP vNext,是一个开源应用程序框架,专注于基于Asp.Net Core的Web应用程序开放。它还支持开放其他类型的应用程序,如微服务。这个版本提供的模块包更加轻量级。

新版abp官网: https://abp.io
源码: https://github.com/abpframework/abp
中文文档: https://docs.abp.io/zh-Hans/abp/latest
abp汉化: https://github.com/cnabp
nuget包地址: https://www.nuget.org/profiles/volosoft
官网nuget包: https://abp.io/package
企业版: https://commercial.abp.io

ABP 体系结构图

这也是领域驱动设计的基本分层结构。
在这里插入图片描述

ABP 框架初始化

ABP框架提供了命令行工具ABP CLI,作为一个项目初始化的脚手架,通过它可以快速的构建一个基于领域驱动设计的起始项目,方便我们进行Web应用的开发。

使用ABP CLI初始化ABP项目

  1. 安装
    ABP CLI是一个.net工具,在.net core 2.1及以上的环境下,可以通过命令行工具进行安装和更新。安装命令如下:

    dotnet tool install -g Volo.Abp.Cli
    

    在这里插入图片描述
    安装完成之后,在命令行中输入abp,即可查看当前ABP CLI版本,出现上图内容时,即按照成功。

  2. 更新
    ABP 框架更新比较频繁,不使用VS中的程序包管理工具,通过ABP CLI也可以更新依赖的ABP框架nuget包,但是ABP CLI本身也需要更新,否则会有警告信息。更新命令如下:

    dotnet tool update -g Volo.Abp.Cli
    

    也可以通过下面选项,在使用ABP CLI更新包的时候跳过版本检查。

    --skip-cli-version-check
    
  3. 卸载
    作为一个.net 工具,ABP CLI自然可以卸载,卸载命令如下:

    dotnet tool uninstall -g Volo.Abp.Cli
    
  4. 生成解决方案

    通过 abp new 命令可以快速的初始化一个解决方案。new 命令可以追加一些参数,生成不同的解决方案。下面罗列出一些生成不同解决方案的命令,其他的参数选项可参考 ABP CLI

    • 生成一个mvc框架的Web项目
      abp new <解决方案名称>
      
    • 生成一个前后端分离项目,目前只支持angular
      abp new <解决方案名称> -t app -u angular 
      
    • 生成一个WebApi项目,作为前后端分离的后端解决方案
      abp new <解决方案名称> -t app -u none
      
    • 分离Identity Server,上面几种方式创建的解决方案中集成了Identity Server,与服务端同一个端口
      abp new <解决方案名称> -t app -u none --separate-identity-server
      
    • 指定数据库提供程序,可以是关系型数据库(EF),或者非关系型数据库(mongodb)
      abp new <解决方案名称> -t app -u none --database-provider ef
      
    • 生成一个微服务解决方案
      abp new <解决方案名称> -t module --no-ui
      
    • 生成一个控制台程序
      abp new <解决方案名称> -t console
      
  5. 添加包

    通过以下命令将ABP提供的模块包添加到项目中,这种方式会自动在项目中的模块类中添加对于的包依赖,即[DependsOn(…)]特性。

    abp add-package <包名>
    
  6. 更新包
    通过以下命令,可以一次性更新全部ABP的依赖包到最新版本,需要在.sln或者.csproj文件所在的文件夹中执行。

    abp update
    
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值