다음 문서에서는 Entity Framework C#에 대한 개요를 제공합니다. Entity Framework는 응용 프로그램에서 중복되는 작업을 제거하여 사용자의 응용 프로그램 생산성을 향상시키는 데 도움이 되는 ORM(개체 관계형 매핑)입니다. EF는 DB에 데이터를 쓰거나 읽는 데 필요한 DB Command를 구축하고 완벽하게 실행합니다. 마지막으로 EF는 DB에서 쿼리를 실행하고 그 결과를 애플리케이션과 연동할 수 있는 도메인 개체로 만듭니다.
Entity Framework는 .Net 애플리케이션용 개체-소스 관계형 매핑(ORM) 프레임워크로, 개발자가 데이터베이스의 열과 테이블에 대한 지식 없이 도메인별 개체를 사용하여 관계형 데이터 작업을 수행할 수 있도록 해줍니다. 데이터가 저장됩니다. 또한 개발자가 일반적으로 작성하는 데이터 액세스 코드를 Entity Framework가 최소화하는 것으로 묘사됩니다.
Department 테이블과 Employee 테이블이 테이블에 여러 부서의 기록과 다양한 부서의 직원의 기록이 포함되어 있다고 가정해 보겠습니다.
이를 달성하려면 Department 및 Employee 클래스를 구축해야 합니다. 그런 다음 데이터베이스에서 해당 데이터를 검색하려면 ADO.NET을 코딩해야 합니다. 마지막으로 데이터가 검색되면 Employee 및 Department 개체를 생성하여 복구된 데이터로 채워야 합니다.
위의 모든 작업은 지루하지만 Entity Framework를 사용하면 쉽습니다. 이러한 작업은 자동으로 수행될 수 있습니다. EF에 DB 스키마를 제공해야 합니다. EF를 사용하여 애플리케이션을 생성하려면 다음 단계를 살펴보겠습니다.
데이터베이스 스키마를 생성하려면 SQL 스크립트를 사용하여 EF_Demo_DB 데이터베이스를 생성하고 직원 및 부서 테이블도 생성하세요
코드:
-- to create the Database EF_Demo_DB CREATE DATABASE EF_Demo_DB; GO -- Use EF_Demo_DB database USE EF_Demo_DB; GO -- to Create the table Departments CREATE TABLE Departments ( ID INT PRIMARY KEY IDENTITY(1,1), Name VARCHAR(50), Location VARCHAR(50) ) Go -- to Create the table Employees CREATE TABLE Employees ( ID INT PRIMARY KEY IDENTITY(1,1), Name VARCHAR(50), Email VARCHAR(50), Gender VARCHAR(50), Salary INT, DepartmentId INT FOREIGN KEY REFERENCES Departments(ID) ) Go -- --to Populate the table with few records INSERT INTO Departments VALUES ('HR', 'Bangalore') INSERT INTO Departments VALUES ('Sales', 'Cochin') INSERT INTO Departments VALUES ('IT', 'Chennai') Go --to Populate the table with few records INSERT INTO Employees VALUES ('Philip', '[email protected]', 'Male', 45000, 2) INSERT INTO Employees VALUES ('Mary', '[email protected]', 'Female', 30000, 2) INSERT INTO Employees VALUES ('Valarie', '[email protected]', 'Female', 35000, 3) INSERT INTO Employees VALUES ('John', '[email protected]', 'Male', 80000, 1) INSERT INTO Employees VALUES ('Joseph', 'jojog.com', 'Male', 60000, 1) INSERT INTO Employees VALUES ('Steve', '[email protected]', 'Male', 45000, 3) INSERT INTO Employees VALUES ('Peter', '[email protected]', 'Male', 60000, 1) INSERT INTO Employees VALUES ('Rio', '[email protected]', 'Female', 345000, 3) INSERT INTO Employees VALUES ('Ben', '[email protected]', 'Male', 70000, 1) Go
콘솔 애플리케이션 생성
데이터가 준비되면 아래와 같이 EFDemo라는 이름으로 새 콘솔 애플리케이션을 만듭니다.
ADO.NET 엔터티 데이터 모델을 추가하려면
콘솔 애플리케이션을 생성하려면 ADO.NET 엔터티 데이터 모델을 추가하고 프로젝트를 마우스 오른쪽 버튼으로 클릭한 후 Add -New Item-Data- ADO.NET 엔터티 데이터 모델을 클릭하고 아래와 같이 이름을 EmployeeDataModel로 지정합니다.
추가 버튼을 클릭한 후 데이터베이스에서 EF Designer를 선택하고 아래와 같이 다음 버튼을 클릭하여 데이터베이스에서 EF Designer를 선택합니다. 여기서는 EF Database First Approach를 사용하고 있습니다.
다음 버튼을 클릭하면 그림과 같이 데이터 연결 마법사를 선택하라는 메시지가 표시됩니다. 새 연결 버튼을 클릭하세요.
새 연결 버튼을 클릭한 후 필요한 데이터베이스 세부 정보를 제공하고 마지막으로 "연결 테스트"를 선택한 후 확인을 클릭하세요.
데이터 연결을 선택하고 엔터티 연결 설정을 앱에 저장합니다. 그런 다음 아래와 같이 구성하고 이름을 EF_Demo_DBEntities로 지정한 후 다음 버튼을 클릭하세요.
여기에서는 표시된 대로 Entity Framework 6.x를 선택하고 다음 버튼을 선택하라는 메시지가 표시됩니다.
원하는 테이블을 선택하고 모델 네임스페이스를 “EmployeeModel”로 변경한 후 그림과 같이 마침 버튼을 클릭하세요.
마침 버튼을 클릭하면 EmployeeDataModel.edmx 파일이 생성됩니다.
아래 그림과 같은 EDMX 파일의 구조입니다,
EF를 이용하여 애플리케이션을 만들었습니다.
코드:
namespace EFDemo { class Program { static void Main(string[] args) { using (EF_Demo_DBEntities DBEntities = new EF_Demo_DBEntities()) { List<Department> listDepartments = DBEntities.Departments.ToList(); Console.WriteLine(); foreach (Department dept in listDepartments) { Console.WriteLine(" Department = {0}, Location = {1}", dept.Name, dept.Location); foreach (Employee emp in dept.Employees) { Console.WriteLine("\t Name = {0}, Email = {1}, Gender = {2}, salary = {3}", emp.Name, emp.Email, emp.Gender, emp.Salary); } Console.WriteLine(); } Console.ReadKey(); } } } }
엔티티 프레임워크 기능:
Entity Framework의 기능을 살펴보겠습니다.
이 글에서는 EF의 기능과 Entity Framework를 만드는 방법을 살펴보았습니다. 그러나 ADO.NET 코드를 사용하는 것은 EF와 비교할 때 지루합니다. 또한 시간이 많이 걸리고 오류가 발생하기 쉬운 프로세스이므로 Microsoft에서는 애플리케이션의 전체 DB 관련 작업을 자동화하기 위해 Entity Framework라는 프레임워크를 제공합니다.
위 내용은 엔터티 프레임워크 C#의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!