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

举报
tea_year 发表于 2021/12/23 00:12:04 2021/12/23
【摘要】 DAL层的方法基本与BLL层一致,前期可以这么做,简单易于理解,后期BLL一个方法可能包含若干个DAL的方法。 参考代码如下: using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading...

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


  
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using Model;
  7. using System.Data.SqlClient;
  8. using System.Data;
  9. //DAL层调用公共的类库
  10. using DbUtil;
  11. using IDAL;
  12. namespace DAL
  13. {
  14. public class DeptDao:IDept
  15. {
  16. //1.复制 service层的几个方法;
  17. //CRUD:增加 U:修改 D:删除;R:检索;
  18. public bool addDept(Dept dept)
  19. {
  20. String sql = "insert dept values(@deptId,@deptName)";
  21. SqlParameter(参数名,值),这里通过封装好的dept对象来取值
  22. //cmd.Parameters.Add(new SqlParameter("@deptId",dept.DeptId));
  23. //cmd.Parameters.Add(new SqlParameter("@deptName", dept.DeptName));
  24. List<SqlParameter> parameters = new List<SqlParameter>();
  25. //问题转移为如何向集合parameters,增加参数和值;
  26. parameters.Add(new SqlParameter("@deptId", dept.DeptId));
  27. parameters.Add(new SqlParameter("@deptName", dept.DeptName));
  28. return DBHelper.update(sql,parameters);
  29. }
  30. public bool updateDept(Dept dept)
  31. {
  32. String sql = "update dept set deptName=@deptName where deptId=@deptId";
  33. List<SqlParameter> parameters = new List<SqlParameter>();
  34. parameters.Add(new SqlParameter("@deptName",dept.DeptName));
  35. parameters.Add(new SqlParameter("@deptId",dept.DeptId));
  36. return DBHelper.update(sql,parameters);
  37. }
  38. public bool delDept(Dept dept)
  39. {
  40. String sql = "delete from dept where deptid=@deptId";
  41. List<SqlParameter> parameters = new List<SqlParameter>();
  42. parameters.Add(new SqlParameter("@deptId", dept.DeptId));
  43. return DBHelper.update(sql, parameters); ;
  44. }
  45. public DataTable refreshData() {
  46. String sql = "select deptId 部门编号,deptName 部门名称 from dept";
  47. return DBHelper.query(sql,null);
  48. }
  49. public DataTable findDeptByName(String deptName)
  50. {
  51. String url = "server=.;database=MyDb;uid=sa;pwd=123456";
  52. //1.链接对象;
  53. SqlConnection conn = new SqlConnection(url);
  54. conn.Open();
  55. //2.SqlCommand
  56. SqlCommand cmd = conn.CreateCommand();
  57. //String sql = "select * from dept where deptName like '{0}' ",deptName;
  58. String sql = "select deptId 部门编号,deptName 部门名称 from dept where deptName like @deptName";
  59. cmd.CommandText = sql;
  60. String str = "%" + deptName + "%";
  61. cmd.Parameters.Add(new SqlParameter("@deptName",str));
  62. //需要用到适配器对象;适配器没有这种参数方式
  63. SqlDataAdapter da = new SqlDataAdapter();
  64. da.SelectCommand = cmd;
  65. DataTable dt=new DataTable();
  66. da.Fill(dt);
  67. return dt;
  68. }
  69. }
  70. }

文章来源: aaaedu.blog.csdn.net,作者:tea_year,版权归原作者所有,如需转载,请联系作者。

原文链接:aaaedu.blog.csdn.net/article/details/109038061

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。