ef
-
EF Core - Code First.NET/Database 2025. 1. 11. 18:58
Code First란 ?데이터베이스 스키마를 코드에서 정의하고, 이를 기반으로 데이터베이스를 생성하거나 유지보수하는 방식입니다. 생산성을 향상하는 부분에서 Code First 방식이 필요한 이유개발을 하다보면 종종 SQL작업과 코드를 번갈아가면서 작업해야하는 경우가 종종 발생합니다. 하지만 여러 언어를 전환하면서 작업하는 것은 상당히 피로한 일 입니다. SQL 역시 마찬가지 입니다. 백엔드 개발자라면 SQL에 대해서 어느정도 이상 사용할 수 있는 것이 너무나도 당연하지만 전환작업에서의 피로감은 피할 수 없습니다. 이런 부분에서 코드 퍼스트 방식을 사용하게 되면, 데이터베이스 스키마 정의와 성능상에서 지장이 없는 부분에 쿼리에 대해서 기존 개발언어만 사용해서 개발 할 수 있습니다. C#의 EF Core는..
-
EF Core - Domain 분리구조 만들기.NET/Database 2024. 3. 22. 08:42
DDD ?도메인 소프트웨어로 해결해야 할 비즈니스의 영역 입니다.도메인 엔티티 도메인 주도 개발에서 실제 식별 가능한 객체EF Entity데이터베이스 테이블에 저장되는 데이터의 구조즉 테이블을 클래스화 한 것을 EF Entity라고 한다.EF Entity를 Domain Entity와 동일하게 사용할 경우의 문제점EF 엔티티를 도메인 엔티티로 그대로 사용하는 경우, 다음과 같은 문제가 발생할 수 있습니다:도메인의 데이터베이스 의존성 증가: 도메인 엔티티가 EF 엔티티로 구현되면, 데이터베이스의 스키마 변경이 도메인 로직에 직접적인 영향을 미치게 됩니다. 이는 도메인 로직이 데이터베이스 설계에 종속되게 만들어, 도메인 모델의 변경이 불필요하게 자주 일어나게 됩니다.데이터베이스 스키마 노출: EF 엔티티가 도..
-
EF Core 시작하기(1) - ef core 패키지 설치, DB 연결.NET/Database 2023. 12. 17. 06:16
EF Core EF Core는 닷넷의 ORM도구인 Entity Framework를 오픈 소스 플랫폼 교차 버전으로 만든 것 입니다. Entity Framework가 visual studio 환경에 종속적이고 GUI환경에 윈도우창으로 나오는 설계 도구를 사용해서 사용했다면, EF Core는 Cli기반이므로 Visual sutdio를 사용할 수 없는 리눅스나, 맥에서도 터미널을 통해서 사용할 수 있습니다. 이 포스트에서는 DBMS로 MySql을 사용하고 있고, docker를 이용해서 로컬에 설치하고 진행했습니다. IDE는 Rider를 사용하였습니다. 맥이나 리눅스에서도 동일하게 사용할 수 있습니다. 이부분은 포스트에서는 생략합니다. dotnet tool 설정 dotnet sdk가 설치되어 있다면 터미널에서 ..