C\#기반 3 층 구조 인 스 턴 스
4237 단어 C#
저희 가 먼저 실 체 를 보도 록 하 겠 습 니 다.-모델.
실질:실체 류 는 데이터베이스 와 실체 류 가 대응 하 는 기능 을 완성 하 는 것 입 니 다.하 나 는 표 이 고 하 나 는 속성 이 필드 입 니 다!
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" />
3 층 중 최 하층-데이터 액세스 층(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;
}
}
}
}
3 층 교량-비 즈 니스 논리 층 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);
}
}
}
3 층 중 에 꼭대기.-표현 층 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");
}
}
}
}
3 층 간 의 관 계 는 다음 그림 과 같다.설명:
상기 코드 에서 DAL 은 주로 데이터베이스 에 있 는 내용 을 조작 하 는데 여기 서 데이터베이스 에 사용 자 를 추가 하 는 것 입 니 다.BLL 은 주로 DAL 층 을 호출 하여 DAL 층 에 사용자 의 결 과 를 추가 합 니 다(true 또는 false).이렇게 하면 클 라 이언 트 와 데이터 베이스 에 중간 층 을 추가 하여 두 층 의 의존 도 를 줄 이 는 것 이다.UI 층 은 주로 사용자 의 요구 에 부 응 하여 BLL 층 이 실현 하 는 adduser 방법 을 호출 합 니 다.DAL 층 은 이 일 을 실제 적 으로 하 는 작업 입 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
WebView2를 Visual Studio 2017 Express에서 사용할 수 있을 때까지Evergreen .Net Framework SDK 4.8 VisualStudio2017에서 NuGet을 사용하기 때문에 패키지 관리 방법을 packages.config 대신 PackageReference를 사용해야...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.