zoukankan      html  css  js  c++  java
  • abp知识

    领域驱动开发的特点:
    1.分层更多,前期代码量大,后期维护方便
    2.业务进行了专业的领域划分,业务逻辑更加清晰,便于业务扩展。
    3.代码工程高内聚,更加精简。
    4.主要是解决复杂业务逻辑编写问题

    为什么要使用DTO(数据传输对象)?
    1.领域对象更注重领域,而DTO更注重数据,面向界面UI。通过DTO我们实现了表现层与Model之间的解耦,不会直接将领域对象的行为暴露给表现层。
    2.DTO可以有效的减少请求数量,减少客户端请求而降低服务器压力,提升效率。
    3.解决序列化和懒加载问题

    ABP数据过滤器:
    软删除接口(ISoftDelete) public virtual bool IsDeleted { get; set; }

    多租接口(IMustHaveTenant) public int TenantId { get; set; }

    多租接口(IMayHaveTenant) public int? TenantId { get; set; }

    ABP实体
    Entity<T>

    创建时间、修改时间、创建人、修改人
    AuditedEntity
    IAudited
    IHasCreationTime        -  DateTime CreationTime { get; set; }
    ICreationAudited          -  long? CreatorUserId { get; set; }
    IHasModificationTime   -  DateTime? LastModificationTime { get; set; }
    IModificationAudited      - long? LastModifierUserId { get; set; }

    软删除
    IDeletionAudited long?     - long DeleterUserId { get; set; }   DateTime? DeletionTime { get; set; }     bool IsDeleted { get; set; }

    ISoftDelete                       - bool IsDeleted { get; set; }

    IFullAudited interface IFullAudited : IAudited, IDeletionAudited

  • 相关阅读:
    学习:大文件统计与排序
    共享库SidebySide之Windows Shared Assembly
    Bundle是个好东西
    所谓的代码段、数据段
    [design decision] common case vs. rare case
    如何给C++设计一个GC
    玩一把tesseract
    [design decision]让工具依赖于naming convention是个拙劣的做法
    监控域名可用性并自动发信
    调试lua代码
  • 原文地址:https://www.cnblogs.com/kerwincui/p/10648023.html
Copyright © 2011-2022 走看看