DAL层的方法基本与BLL层一致,前期可以这么做,简单易于理解,后期BLL一个方法可能包含若干个DAL的方法。
参考代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Model;
using System.Data.SqlClient;
using System.Data;
//DAL层调用公共的类库
using DbUtil;
using IDAL;namespace DAL
{public class DeptDao:IDept{//1.复制 service层的几个方法;//CRUD:增加  U:修改  D:删除;R:检索;  public bool addDept(Dept dept){  String sql = "insert dept values(@deptId,@deptName)";SqlParameter(参数名,值),这里通过封装好的dept对象来取值//cmd.Parameters.Add(new SqlParameter("@deptId",dept.DeptId));//cmd.Parameters.Add(new SqlParameter("@deptName", dept.DeptName));List<SqlParameter> parameters = new List<SqlParameter>();//问题转移为如何向集合parameters,增加参数和值;parameters.Add(new SqlParameter("@deptId", dept.DeptId));parameters.Add(new SqlParameter("@deptName", dept.DeptName));return DBHelper.update(sql,parameters);}public bool updateDept(Dept dept){String sql = "update dept set deptName=@deptName where deptId=@deptId";List<SqlParameter> parameters = new List<SqlParameter>();parameters.Add(new SqlParameter("@deptName",dept.DeptName));parameters.Add(new SqlParameter("@deptId",dept.DeptId));return DBHelper.update(sql,parameters);}public bool delDept(Dept dept)           {String sql = "delete from dept where deptid=@deptId";List<SqlParameter> parameters = new List<SqlParameter>();            parameters.Add(new SqlParameter("@deptId", dept.DeptId));return DBHelper.update(sql, parameters); ;}public DataTable refreshData() {String sql = "select deptId 部门编号,deptName 部门名称 from dept";return DBHelper.query(sql,null);}public DataTable findDeptByName(String deptName){String url = "server=.;database=MyDb;uid=sa;pwd=123456";//1.链接对象;SqlConnection conn = new SqlConnection(url);conn.Open();//2.SqlCommandSqlCommand cmd = conn.CreateCommand();//String sql = "select * from dept where deptName like '{0}' ",deptName;String sql = "select deptId 部门编号,deptName 部门名称 from dept where deptName like @deptName";cmd.CommandText = sql;String str = "%" + deptName + "%";cmd.Parameters.Add(new SqlParameter("@deptName",str));//需要用到适配器对象;适配器没有这种参数方式SqlDataAdapter da = new SqlDataAdapter();da.SelectCommand = cmd;DataTable dt=new DataTable();da.Fill(dt);return dt;}}
}

C#三层架构第四课之DAL层相关推荐

  1. C#三层架构第五课之DBUtil层设计

    DBUtil层设计一般用来设计通用的数据库连接类或者其他字符编码处理.IO处理等通用类的设计. 参考代码如下: using System; using System.Collections.Gener ...

  2. 步步为营 .NET三层架构解析 四、Model设计(四种设计方式)

    说到Model设计,我们先谈谈它的作用: Model又叫实体类,model层里面的一个类对应数据库里面的一张表, 类里面的每一个属性对应表里面的一个字段,每个属性都有自己的 GET 和 SET 方法, ...

  3. C#中三层架构UI、BLL、DAL、Model实际操作

    三层架构主要分为BLL DAL MODEL 业务逻辑层(BLL):对传送数据进行逻辑判断分折,并进行传送正确的值. 数据访问层(DAL):主要是存放对数据类的访问,即对数据库的添加.删除.修改.更新等 ...

  4. java中servlet dal bll model_C#中三层架构UI、BLL、DAL、Model实际操作(转)

    转载请注明出自朱朱家园http://blog.csdn.net/zhgl7688 三层架构分为:表现层(UI).业务逻辑层(BLL).数据访问层(DAL)再加上实体类库(Model) 1.实体类库(M ...

  5. java bll dal_C#中三层架构UI、BLL、DAL、Model实际操作

    三层架构分为:表现层(UI).业务逻辑层(BLL).数据访问层(DAL)再加上实体类库(Model) 转载请注明出自朱朱家园https://blog.csdn.net/zhgl7688 1.实体类库( ...

  6. Entity Framework 6三层架构入门:创建数据访问层DAL

    回顾 上次我们讲到了Model的创建,现在来了解什么是DAL. DAL是针对Model的访问,可以这么说,Model是项目的逻辑操作对象,DAL就是最基本的方法:DAL直接访问数据库.也就是说,该层的 ...

  7. 三层架构:表示层-业务逻辑-数据层

    三层架构:表示层-业务逻辑- 原文地址:三层架构:表示层-业务逻辑层-数据访问层  作者:灰烬 三层架构和MVC是两个东西. 非要相关的话: 三层架构中"表现层"的aspx页面对应 ...

  8. java三层架构(表示层,业务逻辑层,数据访问层,与两层的区别,三层架构的优缺点)

    目录 1 什么是三层 2 为什么使用三层 3 与两层的区别 1 什么是三层 UI(表现层): 主要是指与用户交互的界面.用于接收用户输入的数据和显示处理后用户需要的数据. BLL:(业务逻辑层): U ...

  9. 为什么要在MVC三层架构上再加一层Manager层?

    MVC三层架构 我们在刚刚成为程序员的时候,就会被前辈们 "教育" 说系统的设计要遵循 MVC(Model-View-Controller)架构.它将整体的系统分成了 Model( ...

最新文章

  1. leetcode算法题--数组中数字出现的次数
  2. 搭建Harbor企业级docker仓库
  3. 掘金健康大数据 需突破多重挑战
  4. c matlab 混合编程 调试,64位MATLAB和C混合编程以及联合调试
  5. linux网络编程之通信协议格式
  6. modbus注意几点
  7. 简答题c语言文件操作顺序,计算机基础与程序设计2012年4月真题试题(02275)
  8. 异常解析————Parameter metadata not available for the given statement
  9. (99)FPGA ROM实现(V实现)
  10. 三星Galaxy Fold全球翻车后 推迟发售时间进一步改进
  11. 用Eclipse写java
  12. 【《zw版·Halcon与delphi系列原创教程》 zw_halcon人脸识别
  13. 《GDAL源码剖析与开发指南》导读
  14. SecureCRT绿色破解版(解压即可,无注册机)
  15. win7计算机打开显卡设置在哪里,显卡设置在哪里打开【如何设置】
  16. 当联想失去“联想”(4)- PC+换汤必须换药
  17. 网站安全渗透测试团队公司解决防护方案
  18. codeforces1129D. Isolation
  19. iphone怎么找出来计算机纪录,通话清单怎么查出来(通话记录清单怎么查)
  20. python实现批量修改图片尺寸和图片名称

热门文章

  1. Presto日志中出现大量的Triggering GC to avoid Code Cache eviction bugs
  2. 2016电大计算机网考,2016年电大-电大计算机网考题库[].doc
  3. 全国地铁城市数据分析(python实现)
  4. 容器源码分析之PriorityQueue(十)
  5. 达摩院十大科技趋势发布:2020 非同小可!
  6. 《大数据日知录:架构与算法》前言
  7. 【一起去大厂系列】什么是回表查询?怎么优化回表查询?
  8. 【解析】基础实验4-2.5 关于堆的判断 (25 分)
  9. 查看静态链接和动态链接
  10. php module类,总结php artisan module常用命令