C#三层架构实例

 2023-09-15 阅读 23 评论 0

摘要:对于三层的概念查也查了,看也看了,下面是我找的一个关于三层的简单实例,真正看一下它是如何具体实现的. 我们先来一起看看 实体类-Model 实质:实体类就是在完成数据库与实体类对应的功能,一个类是一张表,一个属性是一个字段! using System; using

对于三层的概念查也查了,看也看了,下面是我找的一个关于三层的简单实例,真正看一下它是如何具体实现的.

我们先来一起看看
实体类-Model
实质:实体类就是在完成数据库与实体类对应的功能,一个类是一张表,一个属性是一个字段!
using System;  
using System.Collections.Generic;  
using System.Linq;  
using System.Text;  namespace model  
{  public class User  {  public User() { }  private string _name;  public string name  {  set { _name = value; }  get { return _name; }  }  }  
}  

 

再来说明一下,这个实例应用了配置文件来访问数据库,当然我们在做的时候可以使用SqlHelper,也可以将连接数据库的这些代码直接放在D层
<add name="ConnectionString" connectionString="Data Source=localhost;Initial Catalog=tester;User ID=sa;Password=123456" providerName="System.Data.SqlClient" />  

 数据访问层(DAL)

三层中的最底层-数据访问层(DAL)  这一层要引用实体类和对Configuration的引用
实质:就是对数据库中的内容的增,删,改,查
using System;  
using System.Collections.Generic;  
using System.Linq;  
using System.Text;  
using model;  
using System.Data;  
using System.Configuration;  
using System.Data.SqlClient;  namespace DAL  
{  public class UserDB  {  public bool User_add(model.User model)  {  string setting = ConfigurationManager.ConnectionStrings["ConnectionString"].ToString();  SqlConnection myconn=new SqlConnection(setting);  myconn.Open();  SqlCommand cmd=new SqlCommand("insert into dbo.[user]([name]) values(@name)",myconn);  cmd.Parameters.AddWithValue("@name", model.name);  if (cmd.ExecuteNonQuery()>0)  {  return true;  }  else  {  return false;  }  }  }  
}  

java三层架构。 业务逻辑层BLL 

三层中的桥梁-业务逻辑层BLL  这一层需要引用实体类和数据访问层
实质:负责处理U层的问题(本例子主要是对数据层的操作)
using System;  
using System.Collections.Generic;  
using System.Linq;  
using System.Text;  
using DAL;  namespace BLL  
{     public class userBLL  {  DAL.UserDB db = new UserDB();  public bool addUser(model.User model)  {  return db.User_add(model);  }  }     
}  

 表现层UI 

三层中的顶层-表现层UI  这一层要引用实体类和业务逻辑层
实质:具体解决做什么的问题
using System;  
using System.Collections.Generic;  
using System.ComponentModel;  
using System.Data;  
using System.Drawing;  
using System.Linq;  
using System.Text;  
using System.Windows.Forms;  
using BLL;  
using model;  namespace 登陆  
{  public partial class Form1 : Form  {  public Form1()  {  InitializeComponent();  }  private void button1_Click(object sender, EventArgs e)  {  model.User thisUser = new User();  thisUser.name = TB_username.Text.ToString();  BLL.userBLL uB = new userBLL();  if (uB.addUser (thisUser))  {  MessageBox.Show ("true");  }  else                                                      {  MessageBox.Show ("false");  }  }  }  }  

 

三层之间的关系:
解释:
上述代码中DAL主要是对数据库中的内容的操作,在这里就是向数据库中添加用户。BLL则主要是调用DAL层的操作,返回DAL层添加用户的结果(true或者false)。这样也就是在客户端与数据库中加了一个中间层,使得两层的依赖性减小。UI层则主要完成响应用户的需求,去调用BLL层实现的adduser方法,DAL层就是实实在在做这件事情的操作。

转载于:https://www.cnblogs.com/starksoft/p/3870659.html

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/2/56027.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息