Abp.GeneralTree
Abp.GeneralTree copied to clipboard
持久化一般放在模块内部,还是放在主应用上?
大部分情况下我们需要的树形数据都很简单,所以我想在你的模块上提供一个默认实现(假如叫DefaultTree),关于持久化有两种想法
1、在模块内部实现持久化 在DefaultTree.Core中定义DefaultTreeEntity,实现IGeneralTree<TTree, TPrimaryKey> 在DefaultTree.EF中定义DBCotnext,其中定义DbSet<DefaultTreeEntity> 甚至继续提供应用服务TreeAppService、和一个通用的UI
2、模块中不处理持久化 在DefaultTree.Core中定义DefaultTreeEntity,实现IGeneralTree<TTree, TPrimaryKey> 在**主程序(也就是模块的使用方)**的DbContext去定义DbSet<DefaultTreeEntity>
前者这种方式如果我的系统有很多模块都涉及到持久化,那么我可能需要很多DbContext 后者这种方式感觉封装性不够强 请教下你有好的建议吗? 还是我哪想错了?