一个开发人员的开发模式下面.用这个有太多代码要写了.所以需要限制与规范自己:

基于abp新系统的开发过程
1>*.Core 增加文件夹
eg:Questions
1.1>增加实体文件
eg:QAQuestion.cs
注意,应用层和实体服务傻傻分不清的时候.不要强迫症那就放一个地方好了.
应用层是各种协调,比如说你新建了一个单据,需要发一个邮件通和/短信通知/xx通知.
实体服务是只针对实体之间的协调.所有的实体状态的修改均在实体或者实体服务中间处理.
2>*.EntityFramework
2.1>*DbContext 增加数据行
eg:public IDbSet<QAQuestion> QAQuestion { get; set; }
2.2>vs201X->视图->其它窗口->程序包管理器控制台->
编辑下EntityFramework,项目里面把*.Web设为默认,好使用它的连接
在程序包管理器控制台里面->选*.EntityFramework为默认项目.
输入 Add-Migration "名字自己取"
会在*.EntityFramework中的Migrations中生成迁移代码.最好是自己修改下.因为所有的string都是max的,
eg:201703160740284_Add_Questions.cs
CreateTable(
"dbo.QAQuestions",
c => new
{
Id = c.Long(nullable: false, identity: true),
RecNo = c.String(nullable:false,maxLength:20),
Product = c.String(nullable:false,maxLength:20),
Version = c.String(nullable:false,maxLength:20),
Category = c.String(nullable:false,maxLength:10),
Status = c.String(nullable:false,maxLength:20),
EndUser = c.String(nullable:true,maxLength:20),
Content = c.String(),

3>*.Application
对外的接口均在此体现
目录结构:
Questions
Dto
xxxxDto
IxxxxService.cs
xxxxService.cs
相应建一把文件夹
eg:Questions
Dto 各种输入输出
外面的是Applcation的内容.可以写一个接口,再继承,也可以不写接口,直接上.
我的意见:
Dto
分页条件输入
单个数据条件输入
列表dto 输出
详细dto 输出
创建dto 输入
更新dto 输入

eg:
[AutoMapFrom(typeof(xxxx))]
xxxxListDto: EntityDto<long> 列表的输出
GetxxxxListInput 列表获取的条件
[AutoMap(typeof(xxxx))]
CreatexxxxInput 创建的输入
GetxxxxInput 单数据获取的条件

为了减少编译,增加灵活性,
所有的输入均做为string json的这种方式.如果需要限制,增加两个d2o.分页条件d2o和条件d2o.除非特殊情况下
附加信息有带吗?
eg:{pageindex:1,xxxx,orderby:'xx desc,mm asc',where:'where xx>"ddd"'}

angularjs2和angularjs1的区别在于.如果你用了angularjs2.要按这个来配置

http://www.cnblogs.com/1zhk/p/5831567.html

angularjs2更像一个整体.与mvc关系不大.在某种程度上面,你可以不用web了.重新建一个项目来做一个clientApp端.

4>*.Web菜单定义
App_Start中
.AddItem(
new MenuItemDefinition(
"Roles",
L("Roles"),
url: "#/roles",
icon: "fa fa-bed"
)
)
这里需要改写
5>*.Web前台菜单定义,用的都是单页
App app.js里面需要定义.

abp使用风格定义的更多相关文章

  1. ABP领域层定义仓储并实现

    原文作者:圣杰 原文地址:ABP入门系列(3)——领域层定义仓储并实现 在原文作者上进行改正,适配ABP新版本.内容相同 一.先来介绍下仓储 仓储(Repository): 仓储用来操作数据库进行数据 ...

  2. Abp VNext权限定义

    在Shop.Application.Contracts项目中Permissions目录下ShopPermissions定义权限名 namespace Shop.Permissions { public ...

  3. java开发移动端之spring的restful风格定义

    https://www.ibm.com/developerworks/cn/web/wa-spring3webserv/index.html

  4. ABP(现代ASP.NET样板开发框架)系列之9、ABP设置管理

    点这里进入ABP系列文章总目录 基于DDD的现代ASP.NET开发框架--ABP系列之9.ABP设置管理 ABP是“ASP.NET Boilerplate Project (ASP.NET样板项目)” ...

  5. ABP源码分析七:Setting 以及 Mail

    本文主要说明Setting的实现以及Mail这个功能模块如何使用Setting. 首先区分一下ABP中的Setting和Configuration. Setting一般用于需要通过外部配置文件(或数据 ...

  6. ABP源码分析四十五:ABP ZERO中的EntityFramework模块

    AbpZeroDbContext:配置ABP.Zero中定义的entity的Dbset EntityFrameworkModelBuilderExtensions:给PrimitiveProperty ...

  7. ABP框架 - 日志

    文档目录 本节内容: 服务端 获取Logger(记录器) Logger的基类 配置 Abp.Castle.Log4Net 包 客户端 服务端 ABP使用Castle Windsor的日志记录工具,它可 ...

  8. ABP框架 - 设置管理

    文档目录 本节内容: 简介 关于ISettingStore 定义设置 setting scope(设置范围) 重写设置定义 获取设置值 服务端 客户端 修改设置 关于缓存 简介 每个应用必需存储一些设 ...

  9. ABP理论学习之日志记录

    返回总目录 本篇目录 服务端 获取Logger 基类中的Logger 配置 客户端 服务端 ABP使用的是Castle Windsor的日志记录设备.它可以和不同的日志类库一起工作,比如Log4Net ...

随机推荐

  1. 使用jQuery操作DOM(ppt练习)

    <!DOCTYPE html> <html> <head> <title>test3.html</title> <meta http- ...

  2. iOS开发技巧——Autolayout动画

          使用Autolayout时需要在动画的代码前面后面添加 layoutIfNeeded方法 Animation AutoLayout也可以配合传统的animation方法,整体代码结构如下. ...

  3. hidefocus小技巧

    hidefocus即隐藏聚焦,具有使对象聚焦失效的功能,其功能相当于: onFocus="this.blur()" 它的值是一个布尔值,如 hidefocus="true ...

  4. 通俗解释遗传算法及其Matlab实现

    早上再看一个APP推荐的文章,发现的. (1)初识遗传算法 遗传算法,模拟达尔文进化论的自然选择和遗传学机理的生物进化过程的计算模型,一种选择不断选择优良个体的算法.谈到遗传,想想自然界动物遗传是怎么 ...

  5. Vue基础知识总结(一)

    一.基本语法: 1.实例化:new Vue({}) 2.el:一定是根容器元素(vue的作用域就是这个根元素内),就是写选择器  data:用于存储数据      methods:定义方法(方法里th ...

  6. CMD/AMD的原理、区别和应用

    有必要简单提一下两者的主要区别: 1.CMD推崇依赖就近,可以把依赖写进你的代码中的任意一行,例: define(function(require, exports, module) { var a ...

  7. appium自动化,失败自动截图

    1.创建监听器类TestNGListener,重写onTestFailure方法,里面定义了 监听的driver ,截图文件路径和名称 package utils; import cases.Appi ...

  8. cmdb是什么

    CMDB -- Configuration Management Database 配置管理数据库,CMDB存储与管理企业IT架构中设备的各种配置信息,它与所有服务支持和服务交付流程都紧密相联,支持这 ...

  9. Unity3d设置QualitySettings为Beautiful Xcode发布错误

    014-06-25 04:49:13.658 XXXX[2004:60b] -> registered mono modules 0x1431a50-> applicationDidFin ...

  10. BZOJ 1016 JSOI 2008 最小生成树计数 Kruskal+搜索

    题目大意:给出一些边,求出一共能形成多少个最小生成树. 思路:最小生成树有非常多定理啊,我也不是非常明确.这里仅仅简单讲讲做法.关于定各种定理请看这里:http://blog.csdn.net/wyf ...