• abp使用风格定义


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

    基于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里面需要定义.

  • 相关阅读:
    如何选择数据科学最好的Python IDE?
    Python代码详解:入门时间序列分类
    2月编程语言排行榜:Python 稳坐前三,Java依旧第一
    写 Python 时的 5 个坏习惯
    Python的多线程threading和多进程multiprocessing
    Python看春运,万条拼车数据背后的春节迁徙地图
    python数据分析案例实战——融360客户贷款风险预测(信用卡)
    情人节攻略:用Python撒狗粮的正确姿势
    Python函数式编程
    python基础
  • 原文地址:https://www.cnblogs.com/forhell/p/6574328.html
Copyright © 2020-2023  润新知