史上最简单的C#三层架构实战教程

5星 · 超过95%的资源 需积分: 10 29 下载量 83 浏览量 更新于2024-09-17 收藏 23KB DOC 举报
“C#三层架构实例 - 最简单的C#三层架构教程,适合新手学习,精简易懂。” 在软件开发中,三层架构是一种常见的设计模式,尤其在C#应用程序开发中,它能帮助开发者实现良好的代码组织和职责分离。三层架构通常包括表示层(Presentation Layer)、业务逻辑层(Business Logic Layer)和数据访问层(Data Access Layer)。在这个最简单的C#三层架构实例中,我们将详细解析每个层的作用和实现方式。 1. 表示层(Presentation Layer): 这是用户与应用程序交互的界面,通常由Windows Forms、ASP.NET或其他UI框架构建。在这个实例中,虽然没有提供具体的UI代码,但我们可以假设这是用户输入登录信息(如用户名和密码)的地方,然后调用业务逻辑层的方法进行处理。 2. 业务逻辑层(Business Logic Layer,BLL): BLL负责处理业务规则和验证。在这个例子中,我们创建了一个名为"Bll"的类库项目,包含一个名为"sysLogin"的静态方法。该方法接收一个Model对象作为参数,这个对象包含了用户输入的登录名和密码。BLL不直接与数据库交互,而是调用数据访问层(DAL)来执行数据库操作。 ```csharp public static int sysLogin(Model m) { string str = "adminValid"; // 存储过程名称 SqlParameter[] sqlParameter = { // 将UI层传递过来的用户名称和密码赋值给存储过程中的变量 new SqlParameter("adminUser", m.AdminUser), new SqlParameter("adminPwd", m.AdminPwd) }; DAL d = new DAL(); return Int32.Parse(d.ExecuteScalar(str, sqlParameter)); } ``` 3. 数据访问层(Data Access Layer,DAL): DAL是直接与数据库交互的部分,负责执行SQL语句或存储过程。在本例中,我们创建了名为"Dal"的类库项目,其中包含一个Dal类。Dal类中的ExecuteScalar方法用于执行SQL命令并返回单个结果值。在这个例子中,它调用了一个名为"adminValid"的存储过程,该存储过程负责验证用户登录。 ```csharp // DAL 类的简化表示,实际可能包含更多数据库连接和事务处理代码 public class DAL { public object ExecuteScalar(string sql, SqlParameter[] parameters) { // 实现与数据库的连接、执行SQL并关闭连接的代码 } } ``` 4. 模型层(Model): Model层封装了业务对象的数据。在本例中,我们创建了一个名为"Model"的类库项目,包含一个Model类,该类有两个属性:AdminUser和AdminPwd,分别对应用户的登录名和密码。 ```csharp public class Model { private string adminUser = string.Empty; private string adminPwd = string.Empty; public string AdminUser { get { return this.adminUser; } set { this.adminUser = value; } } public string AdminPwd { get { return this.adminPwd; } set { this.adminPwd = value; } } } ``` 5. 三层架构的优势: - **职责分离**:各层之间职责明确,减少耦合度。 - **可扩展性**:易于添加新功能或修改现有功能,因为每层都可以独立修改。 - **维护性**:代码结构清晰,便于维护和调试。 - **重用性**:业务逻辑层可以供多个表示层使用,提高代码复用。 这个最简单的C#三层架构实例展示了如何将用户界面、业务逻辑和数据访问分开,使得代码更易于理解和管理。对于初学者来说,这是一个很好的起点,理解了这个实例后,可以逐步学习更复杂的系统设计和更丰富的功能实现。