每日关键词-170304-.net,c#分层架构常识
首先我们看一张我自己的架构图
下面我们,就这个ibll bll dal idal 来说一下
首先我们需要加入IDAL类库,定义IBaseDAL接口
这个接口只有一个作用,定义通用方法,例如增删改查等等,记住这里要写成泛型,因为他的儿子们都要继承它的喔
这里暂时只写这几个,增删改查 提交 ok完成。
然后需要做的就是DAL层里面的与之对应的BaseDAL这个啦
这里只需要 继承这个IBaseDal,实现里面的四五个接口方法即可 ,这里也是泛型的喔,注意看他们的单词 base就知道这个是父亲类
接下来 就有人会问 这些方法好少啊,不够用怎么办,好的 这时候就需要特殊接口进行特殊方法啦
案例,我们有一张form表,form表的作用就是取其它表的表名
建立IformDAL接口
然后 你想想怎么写,当然是下面这样啦,想想这个方法除了传统的增删改查 还需要做什么,这里就很好写了
namespace WhBlog.IDAL {//针对form写拿数据接口public interface IFormDAL : IBaseDAL<form>{//根据formid获取表名string getTableName(int formID);//建立索引this 获取名字string this[int index] { get; set; }//根据权限id获取显示的formid数组int[] getFormIDs(int roleFlag);} }
这里继承ibase接口,然后下面三个是自己针对自己form的
最后是formDAL了
这里类实现这个接口IformDal,并且继承这个BaseDAL这个类(这里很重要,因为呢:如果这里不继承这个basedal呢,后果就是,你每一个特殊话的类就需要实现每一个增删改查的基础方法,是不是麻烦死了,我们把实现基础方法接口的工作交给basedal这个类去实现Ibasedal这个基础接口,然后我们的特殊类只需要继承这个basedal类就可以获得它的一切)
然后 实现以下里面的二个方法即可
public class FormDAL : BaseDAL<form>, IFormDAL{public string this[int index]{get{throw new NotImplementedException();}set{throw new NotImplementedException();}}public int[] getFormIDs(int roleFlag){throw new NotImplementedException();}public string getTableName(int formID){throw new NotImplementedException();}}
基本搞定,bll ibll 自己去写,我就不说了
转载于:https://www.cnblogs.com/wh123/p/6501059.html
每日关键词-170304-.net,c#分层架构常识相关推荐
- 城市地下综合管廊安全运营与智慧管控的分层架构研究
安科瑞 李亚俊 1.引言 1833年,市政管线综合管廊在巴黎城市地下建成至今,经过百年来的探索.研究.改良和实践,法国.英国.德国.俄罗斯.日本.美国等发达国家的管廊规划建设与安全运维体系已经日臻完善 ...
- 架构师必备,了解分层架构中缓存那点事儿
戳蓝字"CSDN云计算"关注我们哦! 作者:贺志兵 无论是CDN缓存加速,还是CPU的三级缓存,又或者是在如今互联网时代流量红利所带来的高并发结构客户端,而不得不使用缓存架构.缓存 ...
- DDD分层架构最佳实践
还在单体应用的时候就是分层架构一说,我们用得最多的就是三层架构.而现在已经是微服务时代,在微服务架构模型比较常用的有几个,例如:整洁架构,CQRS(命令查询分离)以及六边形架构.每种架构模型都有自己的 ...
- 互联网分层架构,为啥要前后端分离?
作者:58神剑,来源:架构师之路 一,典型后端架构 通用业务服务化之后,系统的典型后端结构如上: web-server通过RPC接口,从通用业务服务获取数据 biz-service通过RPC接口,从多 ...
- 走向.NET架构设计—第四章—业务层分层架构(后篇)
走向.NET架构设计-第四章-业务层分层架构(后篇) 前言: 在上一篇文章中,我们讨论了组织业务逻辑的模式:Transaction Script和Active Record,Domain Model. ...
- ddd架构 无法重构_漫谈分层架构:为什么要进行架构分层?
为什么要分层 高内聚:分层的设计可以简化系统设计,让不同的层专注做某一模块的事 低耦合:层与层之间通过接口或API来交互,依赖方不用知道被依赖方的细节 复用:分层之后可以做到很高的复用 扩展性:分层架 ...
- WLAN产品形态之分层架构
随着移动互联网时代的来临,无线数据流量呈现爆发式增长,各大运营商也越来越多依靠WLAN来承载这些无线数据流量,大规模进行WLAN网络建设,分担3G网络的压力,让客户体验更加美好.无处不在的优质无线网络 ...
- 走向.NET架构设计—第四章—业务层分层架构(前篇)
走向.NET架构设计-第四章-业务层分层架构(前篇) 前言:在任何一个项目中业务层毫无疑问是最重要的层,所以在设计的过程中,如何组织业务层是至关重要的.本章的讨论将会涉及Flower的架构模式一书中的 ...
- 分层架构web容器的配置安全
转自:http://hi.baidu.com/shineo__o/item/7520d54c24d234c71081da82 /ps:本以为这是一个偶然配置失误造成的问题,但最近几天无聊时测试发现,有 ...
最新文章
- chrome浏览器的跨域设置 Google Chrome浏览器下开启禁用缓存和js跨域限制--disable-web-security...
- Understanding the Framework (理解FMS框架)
- 重磅 | 20+技术大咖齐聚 阿里云数据库创新上云峰会进入一周倒计时
- 什么就像谈恋爱一样?
- 将字符串中的指定字符全局替换
- Docker Machine搭建并加入节点
- 腾讯游戏规范直播:以后将严禁这些行为!
- Redhat或者Centos 手动安装sublime text 3
- java英文笔试题_java英文面试笔试题
- 易语言不用uac权限写到c盘,易语言制作UAC管理员模式添加器
- 解决:/bin/bash: mvn: 未找到命令
- 关于Android平台上面is not valid; is your activity running?
- 物联网轻松上云实践 之 HaaS样板间
- 中国推出人民币外汇货币掉期交易 规避汇率风险
- Matlab之生成间距向量函数linspace和logspace
- Moudle、aar新建和导入
- Pycharm导入scap包提示出错
- FFmpeg的HEVC解码器源代码简单分析:解析器(Parser)部分
- 第三方支付频频被罚款,市场驱动下或是故意为之?
- DS18B20测量温度液晶1602显示
热门文章
- java项目嗖嗖移动业务大厅项目报告_Java就业指导课程
- android 加网络权限管理,Android添加用户组及自定义App权限的方法
- ctfshow-萌新-web9( 利用命令执行漏洞读取网站敏感文件)
- java8 内部类_Java8基础知识(五)内部类
- 「 iOS知识小集 」2018 · 第 38 期
- 腾讯优图升级为计算机视觉研发中心,与《科学》宣布战略合作
- vue使用过程中的一些问题
- linux NTP服务
- hadoop异常 java.io.IOException: Job status not available
- __init和__initdata