BLL.DAL.表现层作用

本文详细解释了业务逻辑层(BLL)和数据访问层(DAL)在三层架构中的具体职责与实现方式。通过示例代码展示了如何在DAL中获取数据,并在BLL中进一步处理这些数据以满足表现层的需求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

bll是业务逻辑层。并不只是调用dal传递数据的作用。你可以这样理解。dal它只是取数据。然后你前台要的数据并不是你从dal层取到数据。还需要一些处理才是表现层所需要的数据。这个处理的过程就是由bll来处理的。你可能会可以放在表现层处理。是的,是可以的。但是那就不能体现三层架构的意义了。

dal:
/// <summary>
        /// 获取下级栏目列表
        /// </summary>
        /// <param name="id">栏目ID</param>
        /// <returns>Column对象</returns>
        public static DataTable GetChildList(int id)
        {
            return DBHelper.GetData(string.Format("select * from [column] where parentid = {0} order by sort" , id));
        }
BLL:
  /// <summary>
        ///  递归遍历父节点所有子节点
        /// </summary>
        public static IList<Column> GetList(IList<Column> list, int pid, int n)
        {
            DataTable dt = ColumnAgent.GetChildList(pid);
            if (dt == null) return null;
            if (dt.Rows.Count == 0)
            {
                return null;
            }
            else
            {
                foreach (DataRow dr in dt.Rows)
                {
                    Column column = new Column();
                    column.ID = int.Parse(dr["ID"].ToString());
                    if (pid == 0)
                    {
                        column.ChName = dr["ChName"].ToString() + "(" + dr["EnName"].ToString() + ")"; ;
                    }
                    else
                    {
                        column.ChName = "├".PadLeft(n, ' ') + dr["ChName"].ToString() + "(" + dr["EnName"].ToString() + ")";
                    }
                    column.ChPic = dr["ChPic"].ToString();
                    column.EnName = dr["EnName"].ToString();
                    column.ChLink = dr["ChLink"].ToString();
                    column.EnLink = dr["EnLink"].ToString();
                    column.ParentID = int.Parse(dr["ParentID"].ToString());
                    column.Navigate = int.Parse(dr["Navigate"].ToString());
                    list.Add(column);
                    n = n + 1;
                    GetList(list, column.ID, n);
                    n = n - 1;
                }
                return list;
            }

        }
在dal中我们只是获取数据,不用处理它
到bll中我们要把它处理成我们表现层所需要的

转载于:https://www.cnblogs.com/weiyu11/p/7160452.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值