ABP 基本操作
基本信息:
官网:https://aspnetboilerplate.com
api:https://aspnetboilerplate.com/Pages/Documents/Articles-Tutorials
Demo:https://github.com/aspnetboilerplate/aspnetboilerplate-samples
学习步骤:
先看一下API,然后旧直接下载Demo,看这个项目“SimpleTaskSystem”,
不用管这个项目能否运行,主要看一下他的结构,每个模块的分布和定义,得有一个大体上的认识,
看完项目后,再回过去看官网里面的项目整体结构,对应项目结构,再思考一下
总结:
以项目SimpleTaskSystem为例:
应用层(Application):
定义 DTO 和 Service(应用服务)
领域层(Core):
定义 Entity(实体对象) 和 Repository(仓储接口)
基础设施层(EntityFramework 或 NHibernate):
定义 Migrations(数据迁移 ) 和 仓储的实现
应用层 调用 领域层
领域层 调用 基础设施层
常见错误:
注意一下.Net 或 Core 的框架版本
官网文档照着弄一般都能运行,就是一些代码是没有给出相应的路径,或者有一些下的地方文档和示例代码是不一样的,把遇到的记录一下
数据迁移:
最好是把下载的示例demo里面的‘Migrations’这个文件夹删掉,重新生成。
路径:\MyProject.EntityFrameworkCore\Migrations
如果迁移时出错,应该是需要先NuGet里面安装“Microsoft.EntityFrameworkCore.Design”这个文件,版本好像是2.2.1,和其它类库的版本保持一致就好了。
语言包的路径:
\MyProject.EntityFrameworkCore\Migrations
文档里面的是json格式,实际是xml格式
DbContext路径:
\MyProject.EntityFrameworkCore\EntityFrameworkCore\MyProjectDbContext.cs
初始化数据 或 测试数据源 的路径:
\MyProject.EntityFrameworkCore\EntityFrameworkCore\Seed
添加菜单路径:
\MyProject.Web.Mvc\Startup\MyProjectNavigationProvider.cs
Controller基类路径:
\MyProject.Web.Core\Controllers\MyProjectControllerBase.cs
ABP 基本操作的更多相关文章
- 基于DDD的.NET开发框架 - ABP仓储实现
返回ABP系列 ABP是“ASP.NET Boilerplate Project (ASP.NET样板项目)”的简称. ASP.NET Boilerplate是一个用最佳实践和流行技术开发现代WEB应 ...
- [Abp 源码分析]八、缓存管理
0.简介 缓存在一个业务系统中十分重要,常用的场景就是用来储存调用频率较高的数据.Abp 也提供了一套缓存机制供用户使用,在使用 Abp 框架的时候可以通过注入 ICacheManager 来新建/设 ...
- [Abp 源码分析]十一、权限验证
0.简介 Abp 本身集成了一套权限验证体系,通过 ASP.NET Core 的过滤器与 Castle 的拦截器进行拦截请求,并进行权限验证.在 Abp 框架内部,权限分为两块,一个是功能(Featu ...
- 如何用ABP框架快速完成项目(3) - 为什么要使用ABP和ABP框架简介
首先先讲为什么要使用ABP? 当然是因为使用ABP可以快速完成项目啦. 时间就是金钱, 效率就是生命嘛 有了ABP, 你就节省了写如下模块的时间: CRUD数据库基本操作 校验 异常处理 日志 权 ...
- ABP+NetCore+Vue.js实现增删改查
ABP我就不多介绍了,不知道的可以自己百度 本篇开发工具VS2017,数据库SQL SERVER2012,系统Win7 1.去ABP官网下载对应的模板,下载地址:https://aspnetboile ...
- ABP入门系列(1)——学习Abp框架之实操演练
作为.Net工地搬砖长工一名,一直致力于挖坑(Bug)填坑(Debug),但技术却不见长进.也曾热情于新技术的学习,憧憬过成为技术大拿.从前端到后端,从bootstrap到javascript,从py ...
- ABP入门系列(2)——通过模板创建MAP版本项目
一.从官网创建模板项目 进入官网下载模板项目 依次按下图选择: 输入验证码开始下载 下载提示: 二.启动项目 使用VS2015打开项目,还原Nuget包: 设置以Web结尾的项目,设置为启动项目: 打 ...
- Key/Value之王Memcached初探:二、Memcached在.Net中的基本操作
一.Memcached ClientLib For .Net 首先,不得不说,许多语言都实现了连接Memcached的客户端,其中以Perl.PHP为主. 仅仅memcached网站上列出的语言就有: ...
- 基于DDD的现代ASP.NET开发框架--ABP系列文章总目录
ABP相关岗位招聘:给热爱.NET新技术和ABP框架的朋友带来一个高薪的工作机会 ABP交流会录像视频:ABP架构设计交流群-7月18日上海线下交流会的内容分享(有高清录像视频的链接) 代码自动生成: ...
随机推荐
- Echarts 学习系列(2)-常见的静态ECharts图
目录 写在前面 折线(面积)图 1.折线图 2.堆叠折线图 3.堆积面积图 柱状(条形)图 1.柱状图 2.条形图 3.堆积条形图 饼(圆环)图 1.饼图 2.环形图 3.南丁格尔图 写在前面 上一小 ...
- C#读写设置修改调整UVC摄像头画面-白平衡
有时,我们需要在C#代码中对摄像头的白平衡进行读和写,并立即生效.如何实现呢? 建立基于SharpCamera的项目 首先,请根据之前的一篇博文 点击这里 中的说明,建立基于SharpCamera的摄 ...
- Spring Boot 复习
简介 Spring Boot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化新 Spring 应用的初始搭 建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义 ...
- 记一下python的method resolution order(MRO)机制
一直用python都是拿着cookbook和库的文档直接撸,很少会把细节过得那么彻底,遇到问题才会翻文档. 今天看到这个例子的时候我突然触及了我的盲区,我不确定这样的继承层级调用super.foo() ...
- Fiddler抓本机包
使用Fiddler抓本机包的方法: File -->Capture Traffic 选中之后自动设置本机的Internet代理选项.
- JavaScript 之 事件(详解)
一.注册事件的三种方式 1.直接事件方式 语法格式: 变量名.on事件名 = function() {} 注意:这种方式无法给同一对象的同一事件注册多个事件处理函数 2.addEventListene ...
- Springboot jpa多数据源
1.SpringBootApplication package com.xx.xxx; import org.springframework.beans.factory.annotation.Auto ...
- tail: inotify cannot be used, reverting to polling: Too many open files
tail -f catalina.out 出现警告: tail: inotify cannot be used, reverting to polling: Too many open files l ...
- 【JMeter】压力测试工具的概览与使用
软件工程综合实践第五次个人作业 作业要求:在软件测试章节中,我们介绍了不少VSTS的软件测试工具,请使用一些其他平台上的测试工具,并写博客介绍如何在你的项目中具体使用. 前言: 第一次看到这个作业 ...
- PHP二维数组用某个字段的值当做键名
$array = array( array(','name'=>'tom'), array(','name'=>'jerry'), array(','name'=>'spike') ...