C#三层架构第四课之DAL层

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.SqlCommand
            SqlCommand 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;
        }
    }
}
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

teayear

读后有收获可以获取更多资源

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值