ABP -Vnext框架一步一步入门落地教程——ABP Vnext框架代码安装和启动(一)
兄弟们,人生需要指引,而复制是成功最快的方式,让我们开始行动吧
——codesoft
教程介绍
ABP-Vnext框架我们之前摸了无数次,好象初恋的女孩,一直在靠近,一直在努力,一直不敢盯着她的眼睛说:美女,我很喜欢你,能不能一起吃个饭!我们都喜欢自己变得足够的优秀之后,才敢说这句话。结果三年就过去了。我想搞技术也是这样,我一直都把ABP-Vnext框架当做心目中的女神,一直不敢碰。现在,让我们勇敢地把代码拉到本地来,看看到底怎么样。
这个教程没有别的特点,我就是想保证一点:足够清晰和简单,每个人看了,都能够一步一步做出来,完全重现整个过程,完全了解ABP-Vnext所有特点,让ABP-Vnext从女神到女友。
第一步:项目安装
我们要进入官方网站进入入门教程:https://docs.abp.io/zh-Hans/abp/latest/Getting-Started-Setup-Environment?UI=BlazorServer&DB=EF&Tiered=No

跟其他官方教程不一样的是在这里你真的能够学习到进阶实用的开发技术,不象其他的官方教程就象是个广告和敷衍,上次进入谷歌的开发教程页面就是。还有些官方教程你学完了,也完全是懵逼的,拉拉杂杂边边角角的讲,超链接四五层页面,跟逗你玩似的,这个以微软和ORACLE文档为最,关键是微软和ORACLE你看了三四遍每句话都是汉语,却不知道到底是什么意思,大量的名词术语你听都没有听过。还有些官方教程跟网上搞培训的教你CI/CD一样,手写中间件,很牛叉很高大上,一键测试部署监控,老开心了,感觉都会了,可是你一动手就痛苦了,还有十分之九的内容你得自己摸索。当然,再详细的官方教程,我们还需要查资料摸索和踩坑。
设置你的开发环境
第一件事! 在创建项目之前, 让我们先设置你的开发环境.
先决条件
开发计算机上应安装以下工具:
一个集成开发环境 (比如: Visual Studio) 它需要支持 .NET 8.0+ 的开发.
- Node v16 或 v18(Node官网)
- Yarn v1.20+ (不是v2) 1 或 npm v6+ (已跟随Node一起安装)
1 Yarn v2 工作方式不同, 不被支持.
node必须安装,因为我们前端开发需要node的支持,所以这个是必须的。.NET 8.0+安装了VS2022会默认安装,Yarn暂时可以不装,后边需要的时候再装也比较容易。

安装yarn:
npm install -g yarn
yarn --version

安装 ABP CLI
ABP CLI 是一个命令行界面, 用于自动执行基于 ABP 的解决方案的一些常见任务. 首先, 你需要使用以下命令安装 ABP CLI:
dotnet tool install -g Volo.Abp.Cli
如果已安装, 则可以使用以下命令对其进行更新:
dotnet tool update -g Volo.Abp.Cli
第二步:创建新项目
我们将使用 ABP CLI 创建一个新的 ABP 项目.
或者, 你可以使用ABP Framework 网站页面上的选项轻松的 创建并下载 项目.
使用 ABP CLI 的 new 命令创建一个新项目:
abp new Acme.BookStore -u blazor-server
你可以使用不同级别的命名空间, 例如: BookStore、Acme.BookStore或 Acme.Retail.BookStore.
小技巧就是我们先创建好我们的开发文件夹,譬如我把开发文件夹创建在G盘

然后在文件夹窗口输入CMD回车,再输入后边咱们要用到的各种CMD命令。

有没有兄弟,跟我去年一样,都不知道CMD命令和Linux命令在哪里输入执行的,总感觉到处都是高大上的技术,到处都是咱们需要仰望的女神,在办公室搞的提心吊胆,面红耳赤,惴惴不安。生怕同事接开水路过自己电脑旁边,看到自己偷摸打开的一把百度搜索的页面。
第三步:运行程序
创建数据库
在这里我需要提醒大家的是,官方教程提醒我们需要修改连接字符串,但是我看了项目中的连接字符串是可以运行的,.dbMigator和.Blazor两个项目里边的数据库连接字符串我们都不需要动,先把代码运行起来,后边开发需要的时候,我们再修改连接字符串不急,这样会简单很多。
连接字符串
检查在 .Blazor 项目 中 appsettings.json 文件里的连接字符串.
"ConnectionStrings": { "Default": "Server=(LocalDb)\\MSSQLLocalDB;Database=BookStore;Trusted_Connection=True" }
关于连接字符串和数据库管理系统
解决方案配置为默认使用 Entity Framework Core 与 MS SQL Server. 但是, 如果在执行ABP CLI 的new命令时使用了-dbms参数来选择其他DBMS (如-dbms MySQL), 那么连接字符串可能不同.
EF Core 支持 多种 据库提供程序, 因此你可以使用任何受支持的DBMS. 你可以需要时候参阅Entity Framework 集成文档 来学习如何切换到另一个DBMS.
数据库迁移
.dbMigator 应用程序在首次运行时自动创建初始迁移.
如果你使用的是 Visual Studio, 你可以跳到 运行 dbMigrator 部分. 但是, 其他 IDE (例如 Rider) 在首次运行时可能会遇到问题, 因为它会添加初始迁移并编译项目. 在这种情况下, 请在 .dbMigration 项目的文件夹中打开命令行终端, 然后运行以下命令:
dotnet run
下次, 你可以像往常一样在 IDE 中运行它.
运行迁移
右键单击 .dbMigration 项目, 然后选择 设置为启动项目
找到这个项目,设置为启动项,然后运行:

按F5(或Ctrl + F5) 运行应用程序. 它将具有如下所示的输出:

正常运行了数据库迁移项目之后,数据库和实例数据应该就建立起来了。
运行应用程序
确保 .Blazor 项目是启动项目. 运行应用程序将会在浏览器中打开 login 页面:
在 Visual Studio 中使用 Ctrl+F5(而不是F5) 在不进行调试的情况下运行应用程序. 如果你没有调试目的, 这会更快.
再次把.Blazor项目设置为启动项目,好见证奇迹的时刻到了:

输入用户名 admin 和 密码 1q2w3E* 登录应用程序. 应用程序已启动并正在运行. 你可以根据此启动模板开始开发应用程序.登录后,就进入系统了:

是不是很简单,看懂的兄弟们在公屏上敲个666!
后续步骤:
第二步:我们要从数据层、业务逻辑层、前端界面层进行一个功能模块的开发,从而掌握整个框架的开发应用,能够熟练应用这个框架进行项目功能模块的定制开发。这也是我们学习这个框架的目的。

第三步:我们即使知道了如何使用这个框架,可能对于框架背后的原理还是没有深入的了解。那么后边我们就是需要对ABP -Vnext框架背后的原理,有所了解,这样基本上可以做到在知道怎么使用框架开发的同时,还知道为什么可以这么做。再然后你也可以整合别的开源项目优化这个框架。

任务很艰巨,前景很美好!
因为艰巨,所以美好,
因为艰巨,才能带美女烤串!
一起加油!
ABP -Vnext框架一步一步入门落地教程——ABP Vnext框架代码安装和启动(一)的更多相关文章
- Taurus.MVC WebAPI 入门开发教程1:框架下载环境配置与运行(含系列目录)。
前言: Taurus.MVC 微服务版本已经发布了:Taurus.MVC V3.0.3 微服务开源框架发布:让.NET 架构在大并发的演进过程更简单. 以前都是框架发布时写点相关功能点的文章,没有形成 ...
- Sagit.Framework For IOS 开发框架入门开发教程2:一行代码实现引导页
前言: 开篇比较简单:Sagit.Framework For IOS 开发框架入门开发教程1:框架下载与环境配置 第二篇教程之前写了一半,感觉不太好写,而且内容单纯介绍API,要说的很多,又枯燥乏味. ...
- ASP.NET Aries 入门开发教程1:框架下载与运行
背景: 鉴于框架的使用者越来越多,文档太少,不少用户反映框架的入门门槛太高. 好吧,再辛苦下,抽时间写教程吧! 步骤1:下载框架源码 开源地址:https://github.com/cyq1162/A ...
- 微信公众平台入门开发教程.Net(C#)框架
一.序言 一直在想第一次写博客,应该写点什么好?正好最近在研究微信公众平台开发,索性就记录下,分享下自己的心得,也分享下本人简单模仿asp.net运行机制所写的通用的微信公众平台开发.Net(c#)框 ...
- Sagit.Framework For IOS 开发框架入门开发教程1:框架下载与环境配置
背景: 前天开源了框架:开源:Sagit.Framework For IOS 开发框架 所以注定要追补一套开发教程了,所以尽量抽空了!!! 步骤 1:下载框架源码 GitHub:https://git ...
- 《VR入门系列教程》之18---Oculus代码剖析
代码剖析 原文作者:Tony Parisi 那么,Unity究竟是如何支持Oculus VR运行的?首先,我们来看看Unity场景是如何构建的.在Unity集成开发包中有一个相机预设体,这个预 ...
- Taurus.MVC WebAPI 入门开发教程2:添加控制器输出Hello World。
系列目录 1.Taurus.MVC WebAPI 入门开发教程1:框架下载环境配置与运行. 2.Taurus.MVC WebAPI 入门开发教程2:添加控制器输出Hello World. 3.Tau ...
- Taurus.MVC WebAPI 入门开发教程3:路由类型和路由映射。
系列目录 1.Taurus.MVC WebAPI 入门开发教程1:框架下载环境配置与运行. 2.Taurus.MVC WebAPI 入门开发教程2:添加控制器输出Hello World. 3.Tau ...
- Taurus.MVC WebAPI 入门开发教程4:控制器方法及参数定义、获取及基础校验属性【Require】。
系列目录 1.Taurus.MVC WebAPI 入门开发教程1:框架下载环境配置与运行. 2.Taurus.MVC WebAPI 入门开发教程2:添加控制器输出Hello World. 3.Tau ...
- Taurus.MVC WebAPI 入门开发教程5:控制器安全校验属性【HttpGet、HttpPost】【Ack】【Token】【MicroService】。
系列目录 1.Taurus.MVC WebAPI 入门开发教程1:框架下载环境配置与运行. 2.Taurus.MVC WebAPI 入门开发教程2:添加控制器输出Hello World. 3.Tau ...
随机推荐
- 探究C# dynamic动态类型本质
本周在做接口动态传参的时候思考了个问题:如何把一个json字符串,转成C#动态类? 比如由 { 'userId': 100, 'id': 1, 'title': 'hello world', 'com ...
- weekToDo - 一个本地todo软件 - 软件推荐 先用着试试
https://weektodo.me/ https://github.com/Zuntek/WeekToDoWeb/releases/download/v1.7.0/WeekToDo-Setup-1 ...
- pollute 污染 pol=por=pro 向前 lut=释放 结合ps软件里面lut概念记忆
pollute 污染 pol = por = pro = 向前 lut = 释放 (ps里面有lut的概念) e 动词 向前释放 -> 污染 弄脏 简单记忆 poll / ute poll - ...
- python基础笔记((1)
逻辑与或非用的是and or not. 除法即使整除结果也是浮点数 地板除//结果一定是整数. 内存中的字符串是Unicode编码,str.encode('utf-8 or ascii')将class ...
- verilog勘误系列之-->设计行为仿真和时序仿真不一致分析
描述 最近在vivado中设计一个计算器: 28bit有符号加减法,结果出现行为仿真和时序仿真不一致情况 原因 本篇是由于组合逻辑部分敏感信号使用错误导致 代码 r_a, r_b : 对计算数据a, ...
- 00-【K210】API资料、电气接线图、PCB文件
K210的接口说明文档 API接口文档: 链接:https://pan.baidu.com/s/1mlzYRJYQIeHSEMysp_v4cg?pwd=pjmv 提取码:pjmv 2.原理图.PCB文 ...
- tomcat中虚拟主机以及web应用程序的配置
一:新建虚拟主机 1. 在tomcat里新建文件夹myapps,在里面添加ROOT文件,放入网站的首页文件 新建文本文档,输入你想要的内容我这里的内容是TOM.AI,把文本文档的名字改成index.h ...
- 02.Android崩溃Crash库之App崩溃分析
目录总结 01.抛出异常导致崩溃分析 02.RuntimeInit类分析 03.Looper停止App就退出吗 04.handleApplicationCrash 05.native_crash如何监 ...
- LiveData详细分析
目录介绍 01.LiveData是什么东西 02.使用LiveData的优势 03.使用LiveData的步骤 04.简单使用LiveData 05.observe()和observerForever ...
- 「AntV」景点轨迹数据获取与L7可视化
1. 引言 L7 地理空间数据可视分析引擎是一种基于 WebGL 技术的地理空间数据可视化引擎,可以用于实现各种地理空间数据可视化应用.L7 引擎支持多种数据源和数据格式,包括 GeoJSON.CSV ...