ShenNiusModularity项目源码学习(8:数据库操作)
ShenNiusModularity项目使用SqlSugar操作数据库。在ShenNius.Repository项目中定义了ServiceCollectionExtensions.AddSqlsugarSetup函数注册SqlSugar服务,并在ShenNius.Admin.API项目的ShenniusAdminApiModule.OnConfigureServices函数中调用,SqlSugar所用的数据库连接字符串保存在启动项目的appsettings.json文件内。
数据库表对应的实体类保存在ShenNius.Domain项目内,如下图所示,按不同业务模块保存在对应文件夹内。
ShenNiusModularity项目既定义了通用的数据操作接口及对应实现类,也根据不同业务模块的特点定义的专门的数据操作接口及对应实现类。
通用的数据操作接口及对应实现类定义在ShenNius.Repository项目内,接口定义了同步和异步版本的增删改查、分页查询等函数。
专用的数据操作接口定义在ShenNius.Domain项目内,其对应实现类在ShenNius.Infrastructure内,专用接口其实也继承了通用接口IBaseRepository,其对应实现类也继承了通用接口实现类BaseRepository。
ShenNius.Admin.API项目的ShenniusAdminApiModule.OnConfigureServices函数内注册上述通用及专用接口及对应实例。
主要在ShenNius.Admin.API、ShenNius.Admin.Mvc两个项目的控制器类中使用上述通用、专用数据操作接口。
参考文献:
[1]https://gitee.com/shenniu_code_group/shen-nius.-modularity