mvc项目架构分享系列之架构搭建之Repository和Service
项目架构搭建之Repository和Service的搭建
Contents
系列一【架构概览】
0.项目简介
1.项目解决方案分层方案
2.所用到的技术
3.项目引用关系
系列二【架构搭建初步】
4.项目架构各部分解析
5.项目创建
系列三 【Infrastructure搭建】
6.项目架构搭建之Core搭建
7.项目架构搭建之Models搭建
系列四 【Repository和Service的搭建】
8.项目架构搭建之IDAL搭建
9.项目架构搭建之MSSQLDAL搭建
10.项目架构搭建之IBLL搭建
11.项目架构搭建之BLL搭建
系列五 【UI搭建】
12.WebHelper搭建
13.Web搭建
14.AdminLogic搭建
系列六 【项目扩展】
15.新增Model的处理
8.项目架构搭建之IDAL搭建
- IBaseDAL 定义常用的增删改查
-
IDALCollection 定义各个Model对应的接口以及接口特殊方法
在定义接口时的注意事项:
- 必须集成IBaseDAL父接口
- IDbContextFactory 定义获取EF上下文的方法
- IDbSession 定义各个Model对应的数据接口
- IDbSessionFactory 定义获取数据仓储接口的方法
9.项目架构搭建之MSSQLDAL搭建
- BaseDAL 实现IDAL层IBaseDAL 接口中定义的方法
-
DALCollection 定义各个model对应的类并实现IDAL层IDALCollection中各个Model对应的接口以及接口特殊方法
在定义类时的注意事项:
- 必须集成BaseDAL基类
- 必须实现IDAL层对应的接口
示例:
-
DbContextFactory 实现IDAL层IDbContextFactory 接口中定义的获取EF上下文方法
利用dotNet自带的缓存策略,System.Runtime.Remoting.Messaging.CallContext 实现缓存以减少new的过程,提高数据操作效率。
-
DbSession 定义各个Model对应的数据接口并实例化
-
DbSessionFactory 实现IDAL层IDbContextFactory 接口中的获取数据仓储接口的方法
10.项目架构搭建之IBLL搭建
-
IBaseBLL 定义常用的增删改查,以及特殊的方法和属性
-
IBLLCollection 定义各个Model对应的接口以及接口特殊方法
在定义接口时的注意事项:
- 必须集成IBaseBLL父接口
- IBLLSession 定义各个Model对应的service接口
- IBLLSessionFactory 定义获取Service仓储接口的方法
11.项目架构搭建之BLL搭建
- BaseBLL 实现IBLL层IBaseBLL 接口中定义的方法
-
BLLCollection 定义各个model对应的类并实现IBLL层IBLLCollection中各个Model对应的接口以及接口特殊方法
在定义类时的注意事项:
- 必须集成BaseBLL基类
- 必须实现IBLL层对应的接口
示例:
-
BLLSession 定义各个Model对应的service接口并实例化
-
BLLSessionFactory 实现IBLL层IBLLSessionFactory 接口中的获取数据仓储接口的方法
- DbSessionFactory 实现IDAL层IDbSessionFactory 接口中的获取数据仓储接口的方法
作者:weihanli
出处:https://www.cnblogs.com/weihanli/p/5018761.html
版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
分类:
.NET
标签:
ASP.NET
, ASP.NET MVC
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?