【C#】机房重构七层

这篇博客详细介绍了C#中的七层架构,包括UI层、Facade外观层、BLL业务逻辑层、IDAL接口层、DAL数据访问层、Factory工厂层和Entity实体类。内容涵盖七层架构的概念、包图、实现步骤以及各层的代码实现,旨在帮助读者理解并掌握C#应用程序的分层设计思想。

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

什么是七层

七层就是三层的扩充,分层简化了系统,降低了耦合度,明确了各层的功能。
UI层:(User Interface)表示层:位于最外层(最上层),最接近用户。用于显示数据和接收用户输入的数据,为用户提供一种交互式操作的界面。
Facade 外观层:外观模式,为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层的接口,这个接口使得这一子系统更加容易使用。
BLL(Business Logic Layer)业务逻辑层:主要负责对数据层的操作,也就是说把一些数据层的操作进行组合。
对数据业务逻辑处理。
就是逻辑判断、处理。
IDAL 接口层:IDAL是DAL层的类要实现的接口,它体现了”抽象”的精神,或者说是”面向接口编程”的最佳体现。对数据访问层的方法进行抽象,是调用数据访问层方法的接口,提高系统的可维护性。
DAL (Data Access Layer)数据访问层:主要是数据库或者文本文件等存放数据的形式的操作层,对数据库的操作,具体为业务逻辑层或表示层提供数据服务。
Factory 工厂层:用于创建接口对象,是业务逻辑层与接口层的桥梁,对二者进行解耦和。
Entity (Entity Class)实体类:实现了对数据的封装。数据库中每个表都对应一个实体类,表的字段就是实体类的属性。

包图

在这里插入图片描述

实现步骤

1、创建Entity,实现业务实体。
2、创建IDAL,实现接口。
3、创建DAL,实现接口里的方法。
4、增加APP.config里的配置信息,为提供DAL的程序集。
5、创建Factory,返回程序集的指定类的实例。
6、创建BLL,调用Factory,得到程序集指定类的实例,完成数据操作方法。
7、创建Facade,调用BLL,得到BLL层的处理结果返回值。
8、创建UI,调用Facade里的数据操作方法,实现登录。

代码实现

BLL
namespace BLL
{
   
    public class LoginBLL
    {
   
        public DataTable UserBLL(Entity.UserEntity UserInfo )
        {
   
            Factory.LoginFactory fact = new Factory.LoginFactory();  //实例化工厂
            IDAL.LoginIDAL idal = fact.CreateUser();//调用工厂方法创建接口
            DataTable table = idal.SelectUser(UserInfo);//接受D层的返回值

            if (table .Rows .Count >0)
            {
   
                Entity.UserEntity LoginInfo = new Entity.UserEntity();
                //读出登录信息
                LoginInfo.UserID = table.Rows[0]["UserID "].ToString();
                LoginInfo.PWD = table.Rows[0]["PassWord"].ToString();
            }
            else
            {
   
                throw new Exception("无相关信息");
            }
            return table;
        }
    }
}

DAL

namespace DAL
{
   
    class LoginDAL :IDAL.LoginIDAL
    {
   
        public DataTable SelectUser(UserEntity UserInfo)
        {
   
            SQLHelper SqlHelper = new SQLHelper();
            SqlParameter[] SqlParams = {
    new SqlParameter("@UserID", UserInfo.UserID), new SqlParameter("@PassWord", UserInfo.PWD) }<
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值