ABP源碼分析十四:Entity的設計


IEntity<TPrimaryKey>: 封裝了PrimaryKey:Id,這是一個泛型類型

IEntity: 封裝了PrimaryKey:Id,這是一個int類型

Entity<TPrimaryKey> :支持主鍵是泛型類型的Entity

Entity:支持主鍵是int類型的Entity

 

IHasCreationTime: 封裝了CreationTime

ICreationAudited: 封裝了CreatorUserId,這個是long類型

CreationAuditedEntity<TPrimaryKey> : 支持主鍵是泛型類型的Entity,並且封裝了CreationTime 和 CreatorUserId

CreationAuditedEntity: 只支持主鍵是int類型的Entity,並且封裝了CreationTime 和 CreatorUserId

ICreationAudited<TUser> :封裝了泛型類型的creator

CreationAuditedEntity<TPrimaryKey, TUser> :  支持主鍵是泛型類型,並且封裝了泛型類型的creator的Entity

 

ISoftDelete:封裝了軟刪除的標志IsDeleted

IHasDeletionTime:封裝了DeletionTime

IDeletionAudited:封裝了DeleterUserId,這個是long類型

IDeletionAudited: 封裝了泛型類型的DeleterUser

 

 

IHasModificationTime:封裝了LastModificationTime

IModificationAudited: 封裝了LastModifierUserId,這個是long類型

IModificationAudited<TUser> :  封裝了泛型類型的LastModifierUser

 

 

IAudited:從其父類接口那繼承了Creation 和 Modification 的時間和UserID,這個是long類型

AuditedEntity<TPrimaryKey> :支持主鍵是泛型類型的Entity,並且從其父類接口那繼承了Creation 和 Modification 的時間和UserID,這個是long類型

AuditedEntity: 與AuditedEntity<TPrimaryKey>的區別就是其只支持主鍵是int類型的Entity。

 

 

AuditedEntity<TPrimaryKey, TUser> :與AuditedEntity<TPrimaryKey>的區別就是其支持泛型類型的LastModifierUser和CreatorUser。

 

 

IAudited:從其父類接口那繼承了Creation,Modification和delete 的時間和UserID,這個是long類型

FullAuditedEntity<TPrimaryKey> :支持主鍵是泛型類型的Entity,並且從其父類接口那繼承了Creation,Modification和delete 的時間和UserID,這個是long類型

FullAuditedEntity:與FullAuditedEntity<TPrimaryKey>的區別就是其只支持主鍵是int類型的Entity

 

 

FullAuditedEntity<TPrimaryKey, TUser> :與FullAuditedEntity<TPrimaryKey>的區別就是其支持泛型類型的LastModifierUser,CreatorUser 和 deleteuser。

 

以下是最終的類層次結構。

 

返回ABP源碼分析系列文章目錄


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM