|
앞에 쓸데없는 글씨가 적혀 있다 기반. .NET의 3단계 아키텍처는 데이터 링크 계층, 데이터 접근 계층, 비즈니스 논리 계층, 프레젠테이션 계층으로 나눌 수 있습니다. 아래 그림 1의 화살표 기호는 계층 간 상호작용을 보여줍니다: 데이터 접근 계층은 데이터 LINQ 계층을 참조하며; 비즈니스 로직 계층은 데이터 접근 계층과 Data LINQ 계층의 엔티티 클래스를 참조합니다. 프레젠테이션 계층은 비즈니스 로직 계층과 Data LINQ 계층의 엔티티 클래스를 의미합니다. Data LINQ 계층은 주로 엔티티 클래스와 데이터 컨텍스트 클래스를 포함합니다. 일반적으로 엔터티 클래스는 데이터베이스 내 한 테이블에 해당합니다. 서로 다른 계층 간에 데이터 객체로 전송되는 엔티티 클래스 인스턴스를 생성할 수 있습니다.
그림 1 LINQ에서 SQL로의 3단계 아키텍처 다음은 LINQ의 3단계 아키텍처 개발을 SQL로 도입하기 위한 프로젝트를 생성할 때 로그인 창의 예시입니다 준비 1. 먼저, 로그인한 사람의 사용자 이름과 비밀번호를 저장할 데이터베이스와 데이터 테이블이 필요합니다. 여기서는 SQL Server 2005 데이터베이스가 사용됩니다. 데이터베이스 테이블 구조는 그림 2에 나와 있습니다.
그림 2 데이터베이스 사용자 표 2. VS를 열고 다른 프로젝트 유형---> 새 프로젝트를 생성하세요---> Visual Studio 솔루션---> 빈 솔루션 등. 그림 3에 나타난 바와 같이. (여기서는 Visual Studio 2008이 사용 중입니다)
그림 3 빈 해를 만들기 3. 클래스 라이브러리 추가. 솔루션 탐색기에서 새로 생성된 솔루션을 우클릭---> 클래스 라이브러리---> 새 프로젝트를 추가---> 수 있습니다. 그림 4에 나타난 것처럼. 같은 방법은 BLL, DAL, DataLinq 세 가지 라이브러리와 Windows Forms 애플리케이션(웹 애플리케이션 개발이라면 ASP.NET 웹 애플리케이션을 선택)을 추가하고 UI로 명명하는 것을 요구합니다.
그림 4 라이브러리 프로젝트 추가 덧셈 이후의 구조는 그림 5에 나타난다. 동시에 UI를 우클릭해서 UI를 런치 아이템으로 설정하세요.
그림 5 프로젝트 구조 다이어그램 인용문 추가하세요 솔루션 탐색기에서 각 계층에 대한 참조를 추가하세요. BLL 레이어 참조 선택 --->오른쪽 클릭 ---> 참조 추가. 그림 6에 나타난 것처럼. System.Data.Linq에 대한 참조를 추가하세요. 동시에 위 그림 1에 표시된 계층 간 관계에 따라 DAL과 DataLinq에 대한 프로젝트 참조를 추가하세요. 마찬가지로, DAL 계층은 System.Data.Linq와 DataLinq에 대한 프로젝트 참조를, DataLinq 계층은 System.Data.Linq에 대한 참조를, UI 계층은 System.Data.Linq에 대한 참조를, 프로젝트 참조를 LL 및 DataLinq에 추가합니다.
그림 6 프로젝트 참조 추가 지금까지 3단계 아키텍처가 확립되었습니다. 다음은 각 계층에 해당 클래스를 추가하는 것입니다. 1. 먼저, DataLinq 계층입니다. DataLinq를 우클릭---> 새 프로젝트를 추가--->---> 후 LINQ to SQL 클래스를 선택하세요(그림 7에 보이는 것).
그림 7 SQL 클래스에 LINQ 추가 2. 추가가 완료되면, 서버 탐색기로 연결되는 링크와 관련된 dbml.layout 파일(XML 파일) 및 designer.cs 파일이 자동으로 생성됩니다. 서버 탐색기를 열고 데이터베이스에 대한 링크를 설정하세요.
그림 8 오픈 서버 탐색기 3. 데이터베이스에 연결. 도구를 선택해 데이터베이스를 추가--->. 그림 9에 나타난 것처럼. 새로 생성된 데이터베이스를 선택하고 연결 데이터베이스를 결정하세요. 이 시점에서 데이터베이스는 서버 탐색기에 나타납니다.
4. 사용자가 사용할 데이터 테이블을 선택하고, 아래 그림 10에 표시된 대로 디자이너로 드래그 앤 드롭합니다. 파일을 저장하세요. 이제 DataContext 클래스와 관련된 속성, 메서드, 메서드를 가진 엔티티 클래스가 자동으로 생성되었습니다.
그림 10 사용자 클래스 코드 레이어 추가하기 DAL 계층 새로운 UserDAL 클래스를 만들고 다음 코드를 추가하세요 //UserDAL.cs DataLinq를 사용; System.Data.Linq를 사용;
이름 공간 DAL
{ 퍼블릭 클래스 UserDAL { private DataLinq.DBLinqDataContext objDataContext = new DataLinq.DBLinqDataContext();
public User SelectRecordByID(문자열 userid) { 시도해 { return (objDataContext.User in u where, u.Id == userid select u). 싱글(); } catch (예외 예) { 전 애인을 던지고; } } }
}
BLL 계층 새로운 UserBLL 클래스를 만들고 다음 코드를 추가하세요 //UserBLL.cs System.Data.Linq를 사용; DataLinq를 사용;
이름 공간 BLL
{ 퍼블릭 클래스 UserBLL { 사설 달. UserDAL objUserDAL = new DAL. UserDAL();
public User SelectRecordByID(문자열 userid) { return objUserDAL.SelectRecordByID(userid); } }
}
UI 레이어 코드 //LoginForm.cs 사설 BLL입니다. UserBLL objUserBLL = new BLL. UserBLL();
private void btnSubmit_Click(object sender, EventArgs e) { 문자열 ID = txtId.Text.Trim(); 문자열 psd = txtPsd.Text.Trim();
User localDataTable = objUserBLL.SelectRecordByID(id);
if (localDataTable != null && localDataTable.Psd == psd) { MessageBox.Show("성공"); } 그렇지 않으면 { MessageBox.Show("false"); } }
이 시점에서 로그인 인터페이스 코드가 완성되었습니다. 효과를 확인하려면 직접 실행해 보세요.
|