티스토리 뷰

목차

    반응형

    Entity Framework 소개, Work Flow (ADO.NET)


    Entity Framework 소개


    Entity Framework 란?

    - 데이터 지향 소프트웨어 응용 프로그램의 개발을 지원하는 ADO.NET의 기술 집합

    - 개발자가 기본 Database 테이블과 해당 데이터가 저장된 Column을 고려할 필요 없이 고객이나 고객 주소와 같은 데이터를 도메인별 개체 및 속성의 형태로 다룰 수 있다.

    - 개발자가 데이터 처리 시 보다 높은 추상 수준에서 작업할 수 있으며, 적은 코드로 데이터 지향 응용프로그램을 만들고 유지 관리할 수 있다.

    - Entity Framework는 .NET Framework 구성 요소로 3.5 SP1 이상 버전이 설치된 컴퓨터에서는 모두 사용할 수 있다.


    Entity Framework

    - MS에서 만든 ORM 기술


    ORM

    - Object-Relational Mapping의 약자로 객체 관계 매핑이라 한다. 데이터베이스와 객체 지향 언어는 보는 방식이 다르므로 DBA와 개발자 간 다툼을 최소화하기 위해 나온 것이 ORM이다.


    Entity Framework 아키텍처 wpf[Entity Framework 아키텍처]


    - 엔티티 프레임워크에서는 개념적 모델의 엔티티 컨테이너를 나타내며, ObjectContext 에서 파생된 클래스를 생성.

    이 개체 컨텍스트로 추적 및 관계를 관리하기 위한 기능을 제공


    Entity Framework의 장단점


     장점

     단점

     편리함

     성능 저하 :

     다양한 기능을 제공하기 때문에 DataReader 사용 시 성능이 떨어짐

     코드 중복 제거

     허술한 추상화 :

     추상화가 비교적 잘 되어있지만, SQL문을 직접 사용하는 것이 더 편함

     오타로 인한 오류 발생 적음

     기능 부족

     SQL 인젝션 발생이 적음

     



    Entity Framework - Work Flow


    - Entity Framework에는 작업 흐름이라는 것이 존재하며 , DB테이블과 C#클래스가 흐름 별 생성 되는 순서가 다르다.

    - Database First : 테이블 생성 -> VisualStudio에 테이블 정보 불러오기 -> C# 클래스 생성

    - Model First : VisualStudio에서 Model들의 관계 설정 -> C# 클래스와 테이블 생성

    - Code First : C# 클래스 작성 -> Table 생성


    Code First  C# 클래스 작성 - Table 생성[Code First : C# 클래스 작성 -> Table 생성]


    Entity Framework 소개, Work Flow (ADO.NET)

    반응형