老周的ABP框架系列教程 ——

一、框架理论初步学习

 

1、 ABP框架的来源与作用简介

1.1  简介

1.1.1       ABP框架全称为“ASP.NET Boilerplate Project”,中文翻译为” ASP.NET样板项目”,诞生的主要目的就是为了让.NET程序员“秒变”架构师,将.NET企业级项目的主流开发技术、最先进的架构整合起来,让.NET工程师能够更快的开发出更好的项目。

1.1.2       ABP官方网站:http://www.aspnetboilerplate.com/ (这个十分重要,开发项目需从官网生成框架源码,从而在VS中载入框架项目的sln文件)

1.1.3       ABP GitHub源码地址:https://github.com/aspnetboilerplate

1.2  框架所包含技术

1.2.1       .NET MVC 5、Web API 2、C# 5.0

1.2.2       领域驱动设计,如实体、仓储、领域服务、领域事件、应用服务、数据传输对象、工作单元等

1.2.3       分层体系结构:基础设施层 =》 领域层 =》 应用层 =》 展现层

1.2.4       提供一个基础架构来开发可重用可配置的模块

1.2.5       集成现今主流流行的前端开发框架(Bootstrap、Less、AngularJs、jQuery、Modernizr、jQuery.validate、jQuery.form、jQuery.blockUI、json2等)

1.2.6       提供一个基础架构实现IOC(依赖注入,主要采用Castle Windsor)

1.2.7       支持并实现数据迁移,这里主要采用Entity Framework

1.2.8       模块化开发,每个模块可单独指定数据库,拥有独立的EF DbContext

1.2.9       包含一个简单灵活的多语言/本地系统

1.2.10     通过EventBus实现服务端全局领域事件

1.2.11     统一异常处理,应用层不需要自己写异常处理代码

1.2.12     提供针对Application层方法的参数有效性认证

1.2.13     通过Application Service创建Web API层,无需编写ApiController

1.2.14    提供基类帮助用户实现一些常见任务

1.2.15    约定优于配置

1.2.16    Zero模块提供身份验证、授权管理、用户&角色管理、系统设置存取管理、审计日志

2、 创建ABP框架项目

2.1 首先进入官方网站:http://www.aspnetboilerplate.com/

2.2 如下图,输入你的项目名称,ABP官网会自动生成项目文件压缩包

2.3 下载完成后,解压缩到项目目录中

2.4 通过VS打开项目sln文件,笔者这里采用的是Visual Studio 2015版本

2.5 第一次加载可能会有较大几率出现VS警告停止工作的情况,不用理睬,第二次打开VS,重新加载项目sln文件即可(笔者测试过,VS2013也会出现这样的状况)。

注:如一直出现VS加载后重启的状况,请至ABP项目文件目录下的.vs文件夹,删除里面的内容后重新再通过VS加载即可。

2.6 开启项目后会提示如下警告,去掉复选框中的钩后单机确定

2.7 进入项目后,首先打开NuGet包管理器,它会自动安装ABP框架所欠缺的包

2.8 单机还原

2.9 首先将web项目设为启动项目

2.10 然后在NuGet包管理器控制台,设置EntityFramework模块为默认项目,如图:

2.11 在NuGet的还原操作完成后,在NuGet控制台输入命令:Update-Database来初始化数据库

2.12 在NuGet完成包还原操作后,运行Update-Database命令,得到“Running Seed Method”后完成ABP初始化配置

2.13 接下来就开始用VS来驰骋ABP吧!

老周的ABP框架系列教程 -》 一、框架理论初步学习的更多相关文章

  1. 2019 年起如何开始学习 ABP 框架系列文章-开篇有益

    2019 年起如何开始学习 ABP 框架系列文章-开篇有益 [[TOC]] 本系列文章推荐阅读地址为:52ABP 开发文档 https://www.52abp.com/Wiki/52abp/lates ...

  2. ABP框架系列之三十四:(Multi-Tenancy-多租户)

    What Is Multi Tenancy? "Software Multitenancy refers to a software architecture in which a sing ...

  3. ABP框架系列之十一:(AspNet-Core-ASPNET核心)

    Introduction This document describes ASP.NET Core integration for ASP.NET Boilerplate framework. ASP ...

  4. ABP框架系列之五十四:(XSRF-CSRF-Protection-跨站请求伪造保护)

    Introduction "Cross-Site Request Forgery (CSRF) is a type of attack that occurs when a maliciou ...

  5. ABP框架系列之八:(Introduction-介绍)

    Introduction We are creating different applications based on different needs. But implementing commo ...

  6. ABP框架系列之三十三:(Module-System-模块系统)

    Introduction ASP.NET Boilerplate provides an infrastructure to build modules and compose them to cre ...

  7. ABP框架系列之四十九:(Startup-Configuration-启动配置)

    ASP.NET Boilerplate provides an infrastructure and a model to configure it and modules on startup. A ...

  8. ABP框架系列之二十:(Dependency-Injection-依赖注入)

    What is Dependency Injection If you already know Dependency Injection concept, Constructor and Prope ...

  9. ABP框架系列之四:(Repositories-仓库)

    "Mediates between the domain and data mapping layers using a collection-like interface for acce ...

随机推荐

  1. 通过jquery 获取文本框的聚焦和失焦方法

    我还是喜欢用jquery来实现,不管页面中多少个输入框需要实现聚焦,失焦,都公有,我常用的方法是: 遍历该页面中的input框,获取输入框中的val值,当该输入框聚焦的时候跟存放的oldValue值进 ...

  2. Oracle中rownum的用法

    rownum是Oracle对查询结果进行顺序编号,第一行分配1,第二行2,以此类推.rownum不能以任何表的名称作为前缀. rownum这个伪字段可以用于控制返回的记录行数. 例如表:student ...

  3. Hbase负载均衡流程以及源码

    hmater负责把region均匀到各个region server .hmaster中有一个线程任务是专门处理负责均衡的,默认每隔5分钟执行一次. 每次负载均衡操作可以分为两步: 生成负载均衡计划表 ...

  4. java中4中类修饰符访问范围

    public:本类中可见,同包中可见,子类中可见,其他包中可见. protected:本类中可见,同包中可见,子类中可见,其他包不可见. 默认:本类中可见,同包中可见,子类不可见,其他包不可见. pr ...

  5. POJ——3984

    走迷宫问题,POJ上面的题 #include <stdio.h> #include <stdlib.h> #define SIZE 5 bool findpath = fals ...

  6. 数据结构学习笔记05图(最小生成树 Prim Kruskal)

    最小生成树Minimum Spanning Tree 一个有 n 个结点的连通图的生成树是原图的极小连通子图,且包含原图中的所有 n 个结点,并且有保持图连通的最少的边. 树: 无回路   |V|个顶 ...

  7. python二叉树递归算法之后序遍历,前序遍历,中序遍历

    #!/usr/bin/env python # -*- coding: utf-8 -*- # @Date : 2016-11-18 08:53:45 # @Author : why_not_try ...

  8. 任务管理界面添加显示RAM信息

    显示RAM信息的核心代码是大蛋的,我只不过是整理下教程而已! 大蛋应该不会介意的吧,首先你需要apktool和SystemUI.apk,framework-res.apk 然后开始加载框架和反编译.. ...

  9. ADOMD连接SSAS和Mondrian,rex的终结者

    前传 公司使用Mondrian作为OLAP服务器,于是,不得不适用Java开源的Rex进行客户端连接,用了一段时间,实在无法忍受rex的笨拙,于是乎,一直希望有一个工具能够连接替代它. 周末闲来无事, ...

  10. JS中的DOM与BOM

    javascript组成: 1. ECMAScript 基本语法. 2. BOM (浏览器对象模型) 3. DOM (文档对象模型) 一)BOM(borwser Object  Model) 浏览器对 ...