C#三层架构实列
时间: 2023-07-02 14:14:17 浏览: 101
C#三层架构是一种软件设计模式,旨在将应用程序分为三个主要部分:表示层、业务逻辑层和数据访问层。以下是一个简单的示例:
1. 表示层:用户界面和用户交互,包括用户输入和输出。在此层中,通常使用ASP.NET MVC或Windows Forms等技术。
2. 业务逻辑层:应用程序的核心部分,包括所有业务逻辑和规则。在此层中,通常包含C#类和方法。
3. 数据访问层:与数据存储交互的层,包括数据库或文件系统。在此层中,通常使用ADO.NET或Entity Framework等技术。
以下是一个简单的示例代码:
1. 表示层:
```
public partial class Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindData();
}
}
private void BindData()
{
EmployeeBL empBL = new EmployeeBL();
GridView1.DataSource = empBL.GetEmployees();
GridView1.DataBind();
}
}
```
2. 业务逻辑层:
```
public class EmployeeBL
{
public List<Employee> GetEmployees()
{
EmployeeDAL empDAL = new EmployeeDAL();
return empDAL.GetEmployees();
}
}
```
3. 数据访问层:
```
public class EmployeeDAL
{
public List<Employee> GetEmployees()
{
List<Employee> employees = new List<Employee>();
string connectionString = ConfigurationManager.ConnectionStrings["EmployeeDBConnection"].ConnectionString;
using (SqlConnection con = new SqlConnection(connectionString))
{
SqlCommand cmd = new SqlCommand("SELECT * FROM Employee", con);
con.Open();
SqlDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
Employee emp = new Employee();
emp.Id = Convert.ToInt32(reader["Id"]);
emp.Name = reader["Name"].ToString();
emp.Department = reader["Department"].ToString();
employees.Add(emp);
}
}
return employees;
}
}
```
这是一个简单的示例,仅用于演示C#三层架构的基本概念。实际应用中,可能会有更多的层和更复杂的业务逻辑和数据访问。
阅读全文