IApplicationService : 空接口,起標識做用。全部實現了IApplicationService 的類都會被自動注入到容器中。同時全部IApplicationService對象都會被注入一些攔截器(例如:auditing, UnitOfWork等)以實現AOPhtml
AbpServiceBase:抽象類,封裝了對一些通用功能的調用。好比Setting,Localization和UnitOfWork功能。
ApplicationService: 做爲全部其餘appservice的基類。其封裝了對AbpSession, Permission和Feature這些模塊的功能調用.app
使用過ABP的都知道,application service有諸多"神奇"的功能.是否是沒想到 application service 設計卻如此簡單。 其實否則,application service這些"神奇"的功能都是經過castle 攔截器實現的。這些攔截器的實現其實不簡單。這樣的設計不就是平時一直強調的解耦,AOP,IOC什麼的麼。源碼分析
返回ABP源碼分析系列文章目錄spa