일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 명시적외래키
- EFCore
- .net
- Request
- extraParams
- extjs
- dbContext
- 코드프로그래머스
- intellij
- lazy loading
- 대전본식영상
- LINQ
- 에스가든스냅
- 스냅잘찍음
- error
- vscode
- minimalAPI
- mac
- c#코딩의기술실전편
- JSON
- JavaScript
- Store
- ORM
- 라도무스dvd
- React
- Config
- c#
- ViewModel
- 상속
- scanner
- Today
- Total
목록BackEnd/.Net Core (7)
ejyoo's 개발 노트
EF Core 쿼리를 작성한 뒤 클라이언트로 객체를 뿌렸는데, 객체 안에 데이터가 없어서 왜 없는지 알기 위해 EF Core 쿼리에 대해 조사를 하여 정리하려고 한다. 먼저 EF Core 쿼리를 실행하려면 아래의 절차가 존재해야 한다. 1) 쿼리생성 2) 쿼리실행 내가 지금 문제되었던 것은 쿼리를 생성만 하고 실행을 하지 않아서 발생한 것이였다. 예를 살펴보자. var resultData = context.A; context.B; 위의 코드의 경우 resultData는 A 테이블의 모든 데이터를 포함하는 쿼리를 나타낸다. 하지만 이 쿼리는 실행되지 않는다. 쿼리의 결과로 실제 데이터를 가져오려면 ToList(), ToArray(), Single(), First() 등의 메서드를 사용해야 한다. var r..
자료조사 이유 EF Core DbContext를 조회할 때, 따로 조회했음에도 불구하고 참조관계가 설정되어있다면 자동으로 붙어서 결과가 출력되었다. 이 원리가 무엇이고 내부에서 어떤 규칙으로 인해 이러한 결과가 나오게 되었는지 궁금해져서 조사를 통해 현상을 정리하고자 한다. 현상에 대한 정의 먼저 현상에 대한 정의는 아래와 같다 1. A, B 테이블이 있다. 2. A는 부모테이블 B는 자식테이블로 B는 A를 참조하고 있다. var aData = Context.AEntity.Where(x => x.IsValid).ToList(); Context.BEntity.Where(x => x.IsValid).ToList(); 이와 같이 DbContext에서 A 테이블과 B 테이블을 따로 조회했을 때 aData에 B테..
EF Core 에서 DBContext를 사용하여 데이터를 조회할 때, 아래의 경우가 있다. 1) 조인하여 한번에 조회 2) 따로 따로 조회 3) DbContext로 각각 접근하여 조회 위의 방법을 통해서 데이터를 조회하게 되는데, EF Core의 어떤 기준에 의해 저런 방법을 사용하여 데이터를 조회하는지 궁금하여 정리를 해보았다. EF Core (Entity Framework Core)에서 데이터를 로딩하는 방식에는 크게 세가지 방법이 있다. 1. 지연로딩 (Lazy Loading) 2. 즉시 로딩 (Eager Loading) 3. 명시적 로딩 (Explicit Loading) 1. 지연 로딩 (Lazy Loading) 지연로딩은 연관된 엔터티나 컬렉션에 처음 접근할 때 실제 데이터가 로드되는 방식이다...

지난시간 회고 * API 만들고 스웨거 API 뷰어로 보기 -- * 실제 DB 연동 - appsetting 설정 * 도커 설치 - 이미지 다운 - 컨테이너 올리고 - 도커돌리기 - db 서버 실행 * 도커 설정 docker 관련 yml * docker compose up -d : 백그라운드에서 설정된 도커 정보를 실행하겠다. * postman 으로 만든 api를 실행시켜 테스트 한다 / 또는 swagger -- ** front 와 연동할 login api를 만듬 // login api app.MapGet("/login", (HttpContext context) => { return true; }); * 닷넷 빌드 및 닷넷 런 하여 실행 * postman에서 주소 입력하고 실행 * *인증위한 쿠키 설정 *..
C# 의 Minimal API 는 .NET 6.0의 기능으로 API 엔트포인트를 만들 때 필요한 준비 작업을 최소화하고 개발자의 생산성을 향상 시키는 것을 목표로 한다. 주로 작은 서비스나 단일 페이지 애플리케이션 (Single Page Application, SPA) 나 마이크로 서비스 아키텍처에서 사용된다. C#의 Minimal API 는 주요 핵심 개념이 있다. 1. 익명 람다(Lambda) 함수 Minimal API 는 익명 람다 함수를 사용하여 API 끝점(endpoints) 를 정의하고 이로인해 간결하게 API 를 작성할 수 있다. 이러한 함수는 일반적으로 app.Map[HTTP 메소드]의 형태로 작성된다. 예를 들어, HTTP GET 요청을 처리하는 API 끝점은 app.MapGet 함수를 ..
EF 의 ORM 을 사용하면서 모델을 설계할 때 FluntAPI 를 사용하여 각 엔티티 모델 간 외래키를 지정하는데, 이때 외래키로서의 식별관계를 가지는 각 모델이 참조할 수 있도록 명시적 외래키 라는 필드를 작성해야 한다. 이때 타입이 virtual로 들어가는데, 그것이 왜 사용되는지 궁금해서 정리하고자 한다. EF 는 Entitiy Framework 의 약자로 MS에서 개발한 .NET 앱용 오픈소스 객체 관계 매핑 프레임 워크(ORM)이다. EF 에서 외래키 연관관계를 설정할 때 종종 virtual 키워드를 사용한다. virtual 키워드를 사용하면 EF가 해당 속성을 Lazy Loading을 할 수 있다. Lazy Loading은 관련 개체가 실제로 필요로 될 때 까지 해당 개체의 로드를 연기하는 ..

.NetCore 의 Minimal API 만들기 MS 사이트에서 Tutorial로 있는 예제를 참고하여 간단한 프로젝트를 실습한다. 실습 내용 (환경 : .NET 7.0 / .NET SDK) minimap API 생성과 API 호출 (API 호출 도구) EF DBSet 생성 모델 생성과 마이그레이션 코드 생성 도커로 디비 올리고 API 호출하여 디비에 데이터 등록하기 https://learn.microsoft.com/en-us/aspnet/core/tutorials/min-web-api?view=aspnetcore-6.0&tabs=visual-studio-code Tutorial: Create a minimal API with ASP.NET Core Learn how to build a minimal A..