基于 abp vNext 和 .NET Core 开发博客项目 - 使用 abp cli 搭建项目
首先,默认咱们已经有了.net core 3.1的开发环境,如果你没有,快去下载... https://dotnet.microsoft.com/download
由于项目是基于abp vNext开发的,所以开发之前建议去撸一遍abp官方文档,https://docs.abp.io/en/abp/latest/
创建项目有很多种方式:
- 第一种,纯手撸,使用vs手动创建新项目
- 第二种,借助abp模板直接傻瓜式下载,地址:http://abp.io/get-started
- 第三种,abp cli(推荐)
abp cli
abp cli是使用ABP框架启动新解决方案的最快方法,那么前提是你要安装啊。
dotnet tool install -g Volo.Abp.Cli
如果你的版本比较低,使用下面命令进行更新
dotnet tool update -g Volo.Abp.Cli

更多使用方法,请参考 https://docs.abp.io/en/abp/latest/CLI
abp new
终于进入主题了,使用命令
abp new <solution-name> 创建博客项目

默认会生成两个项目,一个aspnet-core,一个react-native。暂时干掉不需要项目吧,虽然react-native也很香,但是现在先忽略它。
然后将aspnet-core文件夹下所有文件剪切至我们的根目录,于是就变成下面这个样子。

至此,基于abp cli创建项目完成,用VS2019打开看看吧。
此时整个目录结构是这样婶的~
blog_tutorial
├── common.props
├── Meowv.Blog.sln
├── Meowv.Blog.sln.DotSettings
├── src
│ ├── Meowv.Blog.Application
│ ├── Meowv.Blog.Application.Contracts
│ ├── Meowv.Blog.DbMigrator
│ ├── Meowv.Blog.Domain
│ ├── Meowv.Blog.Domain.Shared
│ ├── Meowv.Blog.EntityFrameworkCore
│ ├── Meowv.Blog.EntityFrameworkCore.DbMigrations
│ ├── Meowv.Blog.HttpApi
│ ├── Meowv.Blog.HttpApi.Client
│ └── Meowv.Blog.Web
└── test
├── Meowv.Blog.Application.Tests
├── Meowv.Blog.Domain.Tests
├── Meowv.Blog.EntityFrameworkCore.Tests
├── Meowv.Blog.HttpApi.Client.ConsoleTestApp
├── Meowv.Blog.TestBase
└── Meowv.Blog.Web.Tests
由于是基于abp开发,所有默认的项目帮我们引用了一些非常强大但是我们用不到或者不想用的功能,进一步优化项目结构,删掉不要的引用,美化美化。
- 先干掉test文件夹吧,项目刚搭建测试个毛毛啊?干掉不代表测试不重要
- 干掉Meowv.Blog.sln.DotSettings,目前来说没啥乱用
- 添加了一个LICENSE
- 再添加一个README.md文件
- 再添加一个.github文件夹,请暂时忽略它,这个是GitHub Action所需
- 干掉src\Meowv.Blog.DbMigrator,有Meowv.Blog.EntityFrameworkCore.DbMigrations就够了
- 干掉src\Meowv.Blog.HttpApi.Client
- 在src目录下新增项目Meowv.Blog.Application.Caching,用来处理应用服务缓存
- 在src目录下新增项目Meowv.Blog.BackgroundJobs,用来处理后台定时任务
- 在src目录下新增项目Meowv.Blog.Swagger,这里用来编写Swagger扩展、Filter等
- 在src目录下新增项目Meowv.Blog.ToolKits,这里放公共的工具类、扩展方法
- 修改项目名称Meowv.Blog.Web为Meowv.Blog.HttpApi.Hosting,为了完美同时也可以去修改一下文件夹的名称哦
- 在解决方案中新建解决方案文件夹solution-items,然后编辑Meowv.Blog.sln文件,修改Meowv.Blog.Web为Meowv.Blog.HttpApi.Hosting,再新增以下代码
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "solution-items", "solution-items", "{731730B9-645C-430A-AB05-3FC2BED63614}"
ProjectSection(SolutionItems) = preProject
.gitattributes = .gitattributes
.gitignore = .gitignore
common.props = common.props
LICENSE = LICENSE
README.md = README.md
EndProjectSection
EndProject
现在整个项目变成了下面这个样子
blog_tutorial
├── common.props
├── LICENSE
├── Meowv.Blog.sln
├── README.md
└── src
├── Meowv.Blog.Application
├── Meowv.Blog.Application.Caching
├── Meowv.Blog.Application.Contracts
├── Meowv.Blog.BackgroundJobs
├── Meowv.Blog.Domain
├── Meowv.Blog.Domain.Shared
├── Meowv.Blog.EntityFrameworkCore
├── Meowv.Blog.EntityFrameworkCore.DbMigrations
├── Meowv.Blog.HttpApi
├── Meowv.Blog.HttpApi.Client
├── Meowv.Blog.HttpApi.Hosting
├── Meowv.Blog.Swagger
└── Meowv.Blog.ToolKits
编译一下,全部生成成功,到这里算是用abp cli成功搭建一个属于自己的项目,并且还做了响应的调整。

本章只是搭建了项目,后面将逐一分解,期待吗,骚年?
开源地址:https://github.com/Meowv/Blog/tree/blog_tutorial
基于 abp vNext 和 .NET Core 开发博客项目 - 使用 abp cli 搭建项目的更多相关文章
- 基于 abp vNext 和 .NET Core 开发博客项目 - 定时任务最佳实战(三)
上一篇(https://www.cnblogs.com/meowv/p/12974439.html)完成了全网各大平台的热点新闻数据的抓取,本篇继续围绕抓取完成后的操作做一个提醒.当每次抓取完数据后, ...
- 基于 abp vNext 和 .NET Core 开发博客项目 - 博客接口实战篇(一)
系列文章 基于 abp vNext 和 .NET Core 开发博客项目 - 使用 abp cli 搭建项目 基于 abp vNext 和 .NET Core 开发博客项目 - 给项目瘦身,让它跑起来 ...
- 基于 abp vNext 和 .NET Core 开发博客项目 - 博客接口实战篇(二)
系列文章 基于 abp vNext 和 .NET Core 开发博客项目 - 使用 abp cli 搭建项目 基于 abp vNext 和 .NET Core 开发博客项目 - 给项目瘦身,让它跑起来 ...
- 基于 abp vNext 和 .NET Core 开发博客项目 - 博客接口实战篇(三)
系列文章 基于 abp vNext 和 .NET Core 开发博客项目 - 使用 abp cli 搭建项目 基于 abp vNext 和 .NET Core 开发博客项目 - 给项目瘦身,让它跑起来 ...
- 基于 abp vNext 和 .NET Core 开发博客项目 - 博客接口实战篇(四)
系列文章 基于 abp vNext 和 .NET Core 开发博客项目 - 使用 abp cli 搭建项目 基于 abp vNext 和 .NET Core 开发博客项目 - 给项目瘦身,让它跑起来 ...
- 基于 abp vNext 和 .NET Core 开发博客项目 - 博客接口实战篇(五)
系列文章 基于 abp vNext 和 .NET Core 开发博客项目 - 使用 abp cli 搭建项目 基于 abp vNext 和 .NET Core 开发博客项目 - 给项目瘦身,让它跑起来 ...
- 基于 abp vNext 和 .NET Core 开发博客项目 - Blazor 实战系列(一)
系列文章 基于 abp vNext 和 .NET Core 开发博客项目 - 使用 abp cli 搭建项目 基于 abp vNext 和 .NET Core 开发博客项目 - 给项目瘦身,让它跑起来 ...
- 基于 abp vNext 和 .NET Core 开发博客项目 - Blazor 实战系列(二)
系列文章 基于 abp vNext 和 .NET Core 开发博客项目 - 使用 abp cli 搭建项目 基于 abp vNext 和 .NET Core 开发博客项目 - 给项目瘦身,让它跑起来 ...
- 基于 abp vNext 和 .NET Core 开发博客项目 - Blazor 实战系列(三)
系列文章 基于 abp vNext 和 .NET Core 开发博客项目 - 使用 abp cli 搭建项目 基于 abp vNext 和 .NET Core 开发博客项目 - 给项目瘦身,让它跑起来 ...
- 基于 abp vNext 和 .NET Core 开发博客项目 - Blazor 实战系列(四)
系列文章 基于 abp vNext 和 .NET Core 开发博客项目 - 使用 abp cli 搭建项目 基于 abp vNext 和 .NET Core 开发博客项目 - 给项目瘦身,让它跑起来 ...
随机推荐
- 被折磨致死的heroku——herku部署
最近一直在弄heroku部署上线,但是因为中国墙和英语问题,一直弄不好,,很是烦躁,所有暂时先放弃了,但是因为查询了一些资料,有些文档链接有必要放到下面,方便各位和自己查看: heroku官方网站: ...
- Mac安装aws-cli全过程,通过命令行上传文件到aws s3协议服务器
第一次使用aws,首先查询了各种资料,我第一步需要做的是安装aws-cli,而安装aws-cli之前需要安装python3,当然你安装python3之前你还需要安装homebrew,当然我正在安装的过 ...
- Playbook中标签的使用(五)
一个playbook文件中,执行时如果想执行某一个任务,那么可以给每个任务集进行打标签,这样在执行的时候可以通过-t选择指定标签执行, 还可以通过--skip-tags选择除了某个标签外全部执行等 [ ...
- udp协议与tcp协议
TCP协议与UDP协议支持的应用协议 TCP支持的应用协议主要有:Telnet.FTP.SMTP等: UDP支持的应用层协议主要有:NFS(网络文件系统).SNMP(简单网络管理协议).DNS(主域名 ...
- [Qt] QlineEdit 限制输入,例如只能输入整数
要注意validor的作用域,如果超出作用域,则会无效.例如下面的代码,在UI的类的构造函数里.所以要new一个validtor. QIntValidator *intValidator = new ...
- gitlab环境部署
一:配置主机名 [root@localhost ~]# hostname gitlab[root@localhost ~]# bash 二:安装依赖包 [root@gitlab ~]# yum -y ...
- SpringBoot系列(十二)过滤器配置详解
SpringBoot(十二)过滤器详解 往期精彩推荐 SpringBoot系列(一)idea新建Springboot项目 SpringBoot系列(二)入门知识 springBoot系列(三)配置文件 ...
- CCS进阶——div的宽度和高度是由什么决定的?
核心知识 文档流/普通流(Normal Flow) 内联元素的宽高(高度是由行高决定的,宽度=内容+border+marging+padding) 块级元素的宽高(高度是内部文档流元素的高度总和,宽度 ...
- JVM调优:GC 参数
2019独角兽企业重金招聘Python工程师标准>>> JVM调优:GC 参数 博客分类: java jvm 参考: <Memory Management in the Jav ...
- Native Boot 从一个 VHD 引导系统的相关说明
Native Boot 是 Windows 7 和 Windows Server 2008 R2 提供的一个新的功能,它允许从一个 VHD 文件引导一个操作系统,但是需要注意的是目前的 Windows ...