随笔分类 - ABP
摘要:引言 约定优于配置,配置趋于灵活 约定优于配置(convention over configuration) ,也称作按约定编程,是一种软件设计范式,旨在减少软件开发人员需做决定的数量,获得简单的好处,而又不失灵活性。(这个约定,常见于团队开发规范、项目结构、代码规范、数据库军规等等。) 配置趋于灵
阅读全文
摘要:"ABP入门系列目录——学习Abp框架之实操演练" "源码路径:Github LearningMpaAbp" 1. 引言 Abp支持MySql已经不是什么新鲜事了,但按照 "官方文档:Entity Framework MySql Integration" 来,你未必能成功切换,本文就记录下切换MyS
阅读全文
摘要:"ABP入门系列目录——学习Abp框架之实操演练" "源码路径:Github LearningMpaAbp" 1.引言 说到后台作业,你可能条件反射的想到 ,但后台作业并非是后台任务,后台作业用一种队列且持久稳固的方式安排一些待执行后台任务。 为执行长时间运行的任务而用户无需等待,以提高用户体验。
阅读全文
摘要:"ABP入门系列目录——学习Abp框架之实操演练" "源码路径:Github LearningMpaAbp" 1.引言 最近刚学习了下DDD中领域事件的理论知识,总的来说领域事件主要有两个作用,一是解耦,二是使用领域事件进行事务的拆分,通过引入事件存储,来实现数据的最终一致性。若想了解DDD中领域事
阅读全文
摘要:"ABP入门系列目录——学习Abp框架之实操演练" "源码路径:Github LearningMpaAbp" 1.引言 自上次更新有一个多月了,发现越往下写,越不知如何去写。特别是当遇到DDD中一些概念术语的时候,尤其迷惑。如果只是简单的去介绍如何去使用ABP,我只需参照官方文档,实现到任务清单De
阅读全文
摘要:"ABP入门系列目录——学习Abp框架之实操演练" "源码路径:Github LearningMpaAbp" 1. 引言 上一节我们讲解了 "如何创建微信公众号模块" ,这一节我们就继续跟进,来讲一讲公众号模块如何与系统进行交互。 微信公众号模块作为一个独立的web模块部署,要想与现有的【任务清单】
阅读全文
摘要:"ABP入门系列目录——学习Abp框架之实操演练" "源码路径:Github LearningMpaAbp" 1. 引言 现在的互联网已不在仅仅局限于网页应用,IOS、Android、平板、智能家居等平台正如火如荼的迅速发展,移动应用的需求也空前旺盛。所有的互联网公司都不想错过这一次移动浪潮,布局移
阅读全文
摘要:"ABP入门系列目录——学习Abp框架之实操演练" "源码路径:Github LearningMpaAbp" 1. 引言 之前的文章 "ABP入门系列(7)——分页实现" 讲解了如何进行分页展示,但其分页展示仅适用于前台web分页,在后台管理系统中并不适用。后台管理系统中的数据展示一般都是使用一些表
阅读全文
摘要:"ABP入门系列目录——学习Abp框架之实操演练" "源码路径:Github LearningMpaAbp" 1. 引言 创建任务时我们需要指定分配给谁,Demo中我们使用一个下拉列表用来显示当前系统的所有用户,以供用户选择。我们每创建一个任务时都要去数据库取一次用户列表,然后绑定到用户下拉列表显示
阅读全文
摘要:"ABP入门系列目录——学习Abp框架之实操演练" "源码路径:Github LearningMpaAbp" 1. 升级Abp 本系列教程是基于Abp V1.0版本,现在Abp版本已经升级至V1.4.2(截至至文章发布时间),其中新增了New Feature,并对Abp做了相应的Enhancemen
阅读全文
摘要:"ABP入门系列目录——学习Abp框架之实操演练" "源码路径:Github LearningMpaAbp" 1. 前言 In computer programming, unit testing is a software testing method by which individual un
阅读全文
摘要:"ABP入门系列目录——学习Abp框架之实操演练" "源码路径:Github LearningMpaAbp" 一、AbpSession是Session吗? 1、首先来看看它们分别对应的类型是什么? 查看源码发现 是定义在Controller中的类型为 的属性。 再来看看 是何须类也,咱们定位到 中看
阅读全文
摘要:"ABP入门系列目录——学习Abp框架之实操演练" "源码路径:Github LearningMpaAbp" 完成了简单的增删改查和分页功能,是不是觉得少了点什么? 是的,少了权限管理。既然涉及到了权限,那我们就细化下任务清单的功能点: 登录的用户才能查看任务清单 用户可以无限创建任务并分配给自己,
阅读全文
摘要:"ABP入门系列目录——学习Abp框架之实操演练" 讲完了分页功能,这一节我们先不急着实现新的功能。来简要介绍下Abp中Json的用法。为什么要在这一节讲呢?当然是做铺垫啊,后面的系列文章会经常和Json这个东西打交道。 一、Json是干什么的 JSON (JavaScript Object Not
阅读全文
摘要:"ABP入门系列目录——学习Abp框架之实操演练" 完成了任务清单的增删改查,咱们来讲一讲必不可少的的分页功能。 首先很庆幸ABP已经帮我们封装了分页实现,实在是贴心啊。 来来来,这一节咱们就来捋一捋如何使用ABP的进行分页吧。 一、分页请求DTO定义 数据传输对象(Data Transfer Ob
阅读全文
摘要:"ABP入门系列目录——学习Abp框架之实操演练" 完成了增删改查以及页面展示,这一节我们来为任务清单添加【导航菜单】。 在以往的项目中,大家可能会手动在layout页面中添加一个a标签来新增导航菜单,这也是一种方式,但是如果要针对不同用户不同权限决定是否显示某个菜单,那么直接在layout页面中去
阅读全文
摘要:ABP中对邮件的封装主要集成在 和`Abp.Net.Mail.Smtp`命名空间下,相应源码 "在此" 。 一、Abp集成的邮件模块是如何实现的 分析可以看出主要由以下几个核心类组成: EmailSettingNames :静态常量类,主要定义了发送邮件需要的相关参数:Port、Host、UserN
阅读全文
摘要:"ABP入门系列目录——学习Abp框架之实操演练" 这一章节将通过完善Controller、View、ViewModel,来实现展现层的增删改查。最终实现效果如下图: 一、定义Controller ABP对 ASP.NET MVC Controllers 进行了集成,通过引入 Abp.Web.Mvc
阅读全文
摘要:"ABP入门系列目录——学习Abp框架之实操演练" 一、解释下应用服务层 应用服务用于将领域(业务)逻辑暴露给展现层。展现层通过传入DTO(数据传输对象)参数来调用应用服务,而应用服务通过领域对象来执行相应的业务逻辑并且将DTO返回给展现层。因此,展现层和领域层将被完全隔离开来。 以下几点,在创建应
阅读全文
摘要:"ABP入门系列目录——学习Abp框架之实操演练" 一、先来介绍下仓储 仓储(Repository) : 仓储用来操作数据库进行数据存取。仓储接口在领域层定义,而仓储的实现类应该写在基础设施层。 在ABP中,仓储类要实现 接口,接口定义了常用的增删改查以及聚合方法,其中包括同步及异步方法。主要包括以
阅读全文