ABP从入门到精通(1):aspnet-zero-core项目启动及各项目源码说明
一.ABP的简单介绍
ABP是“ASP.NET Boilerplate Project (ASP.NET样板项目)”的简称。
ASP.NET Boilerplate是一个用最佳实践和流行技术开发现代WEB应用程序的新起点,它旨在成为一个通用的WEB应用程序框架和项目模板。
ASP.NET Boilerplate 基于DDD的经典分层架构思想,实现了众多DDD的概念(但没有实现所有DDD的概念)。
二.ASP.NET ZERO和ABP的关系
ASP.NET ZERO 是 利用ABP框架搭建的模板项目,它会提供预建的页面及强大的基础设施架构。利用它提供的基础框架代码能让你快速的开发你的应用层。
准备使用ABP,经过几天观看园友的博文的学习打算试一试深浅
IDE:Visual Studio 2017
项目版本:aspnet-zero-core 4.1.1
今天中午已经测试了,aspnet-zero-core 4.1.1可以在centos 7.2下运行
.net core的环境配置请移步 https://www.microsoft.com/net/core#windowsvs2017
下面进入正题!
三.启动ASP.NET ZERO
1.使用VS2017打开项目,等待自动还原程序包结束

2.生成项目,确保项目全部生成成功

3.生成数据库
(1).将项目“MyCompanyName.AbpZeroTemplate.EntityFrameworkCore”设为启动项目
(2).打开 工具->Nuget包管理器->程序包管理器控制台,在下拉列表中选中上面的项目

(3).请确保Sql Server数据库正常开启,在 程序包管理器控制台 执行命令“Update-Database”(命令执行可能会有点慢,耐心等待)

命令执行完成后,会生成一个名为AbpZeroTemplateDb的数据库

(3).将项目 “MyCompanyName.AbpZeroTemplate.Web.Mvc” 设为启动项目,可以直接按F5启动项目,也可使用命令“dotnet run”启动项目
启动成功如下:
输入地址 http://localhost:5000/ 即可访问.

默认用户名 admin 密码 123qwe

至此 asp.net zero core项目已经成功启动
四.各项目说明
项目依赖关系图

1.MyCompanyName.AbpZeroTemplate.Core 项目核心,从上图就可以看出,在DDD分层中,它应该作为领域层
2.MyCompanyName.AbpZeroTemplate.Application 应用服务层,包含各个应用逻辑
3.MyCompanyName.AbpZeroTemplate.EntityFrameworkCore 基于 EntityFrameworkCore 的封装,提供了数据库连接支持,仓储 基础设施层
4.MyCompanyName.AbpZeroTemplate.Migrator 数据库迁移工具(关于数据库迁移,后面的博文会讲),用于执行迁移可以再生产环境中使用
5.MyCompanyName.AbpZeroTemplate.Web.Core 展现层核心,封装了一些展现层需要用到的工具
6.MyCompanyName.AbpZeroTemplate.Web.Host ABP的动态webapi+swagger 行

7.MyCompanyName.AbpZeroTemplate.Web.Public asp.net zero 前台页面

8.MyCompanyName.AbpZeroTemplate.Web.MVC 后台页面

如若需要部署到IIS,需要安装Windows Server Hosting (https://www.microsoft.com/net/download/core#/runtime)
安装成功在iis->模块 里会看到 
发布项目
新建网站,然后设置 应用程序池
如果报错请到事件查看器查看错误,或者查看 App_Data/Logs/Logs.txt
这里贴一个我遇到的错误:无法连接数据库,我自己测试的时候发现连接数据库异常了,使用的身份是iis的用户身份,肯定无法用Windows身份认证(asp.net zero默认)登录数据库,所以直接改为账号密码登录,就成功了。
我也是初次接触ABP,如果有什么写的不对的地方,欢迎批评改正!
ABP从入门到精通(1):aspnet-zero-core项目启动及各项目源码说明的更多相关文章
- ABP从入门到精通(6):快速重命名解决方案
SolutionRenamer SolutionRenamer 是一个解决方案快速重命名工具.经测试重命名一个全新asp.net zero core项目(ABP asp.net zero,.net c ...
- ABP从入门到精通(2):aspnet-zero-core 使用MySql数据库
关于 asp.net zero core 项目的启动及说明,请观看我前面的博文 http://www.cnblogs.com/stulzq/p/7237153.html 本操作对于ABP默认项目应该也 ...
- ABP从入门到精通(3):aspnet-zero-core 使用Redis缓存
一.Redis是什么? redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset ...
- ABP从入门到精通(5):使用基于JWT标准的Token访问WebApi
项目:asp.net zero 4.2.0 .net core(1.1) 版本 我们做项目的时候可能会遇到需要提供api给app调用,ABP动态生成的WebApi提供了方便的基于JWT标准的Token ...
- ABP从入门到精通(5):.扩展国际化语言资源
ABP的有些组件使用的该组件自带的语言包资源,所以在有些时候会因为我们当前使用的语言对应的语言包不全,而造成日志一直记录WARN.ABP给我们提供了扩展语言包资源的接口,可以解决这个问题. 以下示例代 ...
- ABP从入门到精通(4):使用基于JWT标准的Token访问WebApi
项目:asp.net zero 4.2.0 .net core(1.1) 版本 我们做项目的时候可能会遇到需要提供api给app调用,ABP动态生成的WebApi提供了方便的基于JWT标准的Token ...
- Java从入门到精通——数据库篇Mongo DB 安装启动及配置详解
一.概述 Mongo DB 下载下来以后我们应该如何去安装启动和配置才能使用Mongo DB,本篇博客就给大家讲述一下Mongo DB的安装启动及配置详解. 二.安装 1.下载Mongo DB ...
- arcgis api 4.x for js 结合 react 入门开发系列react全家桶实现加载天地图(附源码下载)
基于两篇react+arcgis的文章介绍,相信大家也能体会两者的开发区别了.在“初探篇”中作者也讲述了自己的选择,故废话不多说,本篇带大家体验在@arcgis/webpack-plugin环境下,使 ...
- 小迪安全 Web安全 基础入门 第六天 - 信息打点-Web架构篇&域名&语言&中间件&数据库&系统&源码获取
一 . Web架构 语言.常用的Web开发语言有PHP,Java,Python,JavaScript,.net等.具体可参考w3school的介绍. 中间件. (1)常见的Web服务器中间件:IIS. ...
随机推荐
- 3D旋转动画练习 demo
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- unity3D:游戏分解之角色移动和相机跟随
游戏中,我们经常会有这样的操作,点击场景中某个位置,角色自动移动到那个位置,同时角色一直是朝向那个位置移动的,而且相机也会一直跟着角色移动.有些游戏,鼠标滑动屏幕,相机就会围绕角色旋转. ...
- 修改cms版权等等信息
目的:为DedeCMS换上精美多样的提示信息窗口 用到的开源项目:DedeCMS,artdialog 步骤: 1.下载include.rar文件完成后,解压得到2个php文件和一个使用说明文件,将ph ...
- Spring学习(22)--- AOP之Advice应用(下)
(六)Advice parameters(advice带参数的情况) 例子: 修改MyAspect(添加around_init方法): package com.aop.schema; import o ...
- Context源码分析
我们做安卓开发,时时都在和Context打交道,那么Context到底是什么?有什么作用?如何与Application,Activity,Service等实例发生联系的?等等 Context是什么? ...
- [BZOJ2707]走迷宫
Description Morenan被困在了一个迷宫里.迷宫可以视为N个点M条边的有向图,其中Morenan处于起点S,迷宫的终点设为T.可惜的是,Morenan非常的脑小,他只会从一个点出发随机沿 ...
- JS学习笔记——JavaScript继承的6种方法(原型链、借用构造函数、组合、原型式、寄生式、寄生组合式)
JavaScript继承的6种方法 1,原型链继承 2,借用构造函数继承 3,组合继承(原型+借用构造) 4,原型式继承 5,寄生式继承 6,寄生组合式继承 1.原型链继承. <script t ...
- 摘记:Web应用系统测试内容
表示层: 内容测试,包括整体审美.字体.色彩.拼写.内容准确性和默认值 Web站点结构,包括无效的链接或图形 用户环境,包括Web浏览器版本和操作系统配置(每一个浏览器都有不同的脚本引擎或虚拟机在客户 ...
- C++数组概述
C++数组概述 基本概念 1. 数组是固定大小的一种复合类型 因为数组是固定大小,所以在编译期间就决定了基大小 数组的内存是连续(无论是一维数组还是多维数组) 2. 数组的特性 数组之间不允许拷贝和赋 ...
- [leetcode-556-Next Greater Element III]
Given a positive 32-bit integer n, you need to find the smallest 32-bit integer which has exactly th ...