Entity Framework 6Entity Framework 6

EF6(Entity Framework 6)는 수년에 걸친 기능 개발 및 안정화 과정을 통해 테스트를 거친 .NET용 O/RM(개체 관계형 매퍼)입니다.Entity Framework 6 (EF6) is a tried and tested object-relational mapper (O/RM) for .NET with many years of feature development and stabilization.

O/RM으로써 EF6는 관계형 데이터베이스와 개체 중심 데이터베이스 사이의 불일치를 완화하고, 개발자가 애플리케이션의 도메인을 나타내는 강력한 형식의 .NET 개체를 사용하여 관계형 데이터베이스에 저장된 데이터와 상호 작용할 수 있게 해주고, 일반적으로 개발자가 작성해야 하는 데이터 액세스 "내부" 코드의 많은 부분을 할 필요가 없게 만들어 줍니다.As an O/RM, EF6 reduces the impedance mismatch between the relational and object-oriented worlds, enabling developers to write applications that interact with data stored in relational databases using strongly-typed .NET objects that represent the application's domain, and eliminating the need for a large portion of the data access "plumbing" code that they usually need to write.

EF6는 다양한 인기 O/RM 기능을 구현합니다.EF6 implements many popular O/RM features:

  • EF 형식에 따라 달라지지 않는 POCO 엔터티 클래스 매핑Mapping of POCO entity classes which do not depend on any EF types
  • 자동 변경 내용 추적Automatic change tracking
  • ID 확인 및 작업 단위Identity resolution and Unit of Work
  • 즉시 로드, 지연 로드 및 명시적 로드Eager, lazy and explicit loading
  • LINQ(Language-Integrated Query)를 사용한 강력한 형식의 쿼리 변환Translation of strongly-typed queries using LINQ (Language INtegrated Query)
  • 다음 지원을 포함한 풍부한 매핑 기능:Rich mapping capabilities, including support for:
    • 일대일, 일대다 및 다대다 관계One-to-one, one-to-many and many-to-many relationships
    • 상속(계층 구조별 테이블, 형식별 테이블, 구체적인 클래스별 테이블)Inheritance (table per hierarchy, table per type and table per concrete class)
    • 복합 형식Complex types
    • 저장 프로시저Stored procedures
  • 엔터티 모델을 만드는 시각적 디자이너.A visual designer to create entity models.
  • 코드를 작성하여 엔터티 모델을 만드는 "Code First" 환경A "Code First" experience to create entity models by writing code.
  • 기존 데이터베이스에서 모델을 생성한 후 직접 편집할 수도 있고, 처음부터 새로 만든 후 새 데이터베이스를 생성하는 데 사용할 수도 있습니다.Models can either be generated from existing databases and then hand-edited, or they can be created from scratch and then used to generate new databases.
  • ASP.NET을 포함한 .NET Framework 애플리케이션 모델과 통합, 데이터 바인딩을 통해 WPF 및 WinForms와 통합.Integration with .NET Framework application models, including ASP.NET, and through databinding, with WPF and WinForms.
  • ADO.NET 및 SQL Server, Oracle, MySQL, SQLite, PostgreSQL, DB2 등에 연결할 수 있는 다양한 공급자를 기반으로 하는 데이터베이스 연결.Database connectivity based on ADO.NET and numerous providers available to connect to SQL Server, Oracle, MySQL, SQLite, PostgreSQL, DB2, etc.

EF6 또는 EF Core를 사용해야 하나요?Should I use EF6 or EF Core?

EF Core는 가볍고 확장 가능한 최신 버전의 Entity Framework로, EF6와 매우 비슷한 기능을 제공합니다.EF Core is a more modern, lightweight and extensible version of Entity Framework that has very similar capabilities and benefits to EF6. EF Core는 완전히 다시 작성되었으며, EF6의 고급 매핑 기능 중 일부를 제공하지 않지만 EF6에 없는 여러 새 기능을 포함하고 있습니다.EF Core is a complete rewrite and contains many new features not available in EF6, although it also still lacks some of the most advanced mapping capabilities of EF6. 기능 집합이 요구 사항과 일치하는 경우 새 애플리케이션에서 EF Core를 사용해 보세요.Consider using EF Core in new applications if the feature set matches your requirements. EF Core & EF6 비교에서는 이 선택에 대해 자세히 살펴봅니다.Compare EF Core & EF6 examines this choice in greater detail.

시작Get Started

프로젝트에 EntityFramework NuGet 패키지를 추가하거나 Visual Studio용 Entity Framework Tools를 설치합니다.Add the EntityFramework NuGet package to your project or install the Entity Framework Tools for Visual Studio. 그런 다음, EF6를 최대한 활용하는 방법을 알려주는 비디오를 시청하고, 자습서 및 고급 설명서를 읽습니다.Then watch videos, read tutorials, and advanced documentation to help you make the most of EF6.

이전 Entity Framework 버전Past Entity Framework Versions

Entity Framework 6 최신 버전에 대한 설명서지만, 많은 부분이 이전 릴리스에도 적용됩니다.This is the documentation for the latest version of Entity Framework 6, although much of it also applies to past releases. EF 릴리스 및 포함된 기능의 전체 목록은 새로운 기능이전 릴리스를 확인하세요.Check out What's New and Past Releases for a complete list of EF releases and the features they introduced.