본문 바로가기

Backend/C# .NET6

C#의 recode 레코드 왜 쓰나요? 샘플 코드 예제 / 명명 규칙 record record타입이란 객체 내의 멤버가 변하지 않는 불변 참조 타입(Immutable Reference Type) 생성을 목적으로 한다. 기존엔 class 키워드를 사용해서 클래스를 정의 했지만 record라는 키워드를 통해 불변 타입을 정의하게 된다. C# 9 이상 버전에서 사용할 수 있다. 코드 예제 class로 작성한 Response public class ScoreResponse { public long Id { get; init; } public string Name { get; init; } public decimal AverageScore { get; init; } } record로 작성한 responsepublic record ScoreResponse( long Id, strin.. 2023. 12. 4.
CQRS 패턴을 적용한 MediatR과 FluentValidation CQRS 패턴이란? CQRS Pattern CQRS 패턴이란? CQRS Pattern /pages/list /pages/list CQRS Pattern 이 포스트는 출처가 있는 글입니다. 공부를 위해 정리했습니다 애플리케이션에서 읽기와 쓰기를 분리하는걸 CQRS 패턴이라고 한다. CQRS 패턴은 물리적, 논리적으로 나 solyi.kr CQRS 패턴의 개념에 대해선 위 포스트를 참고해주세요 😄 CQRS 패턴을 적용한 MediatR과 FluentValidation 기본 예제 코드 MediatR은 IRequest 인터페이스를 사용하여 명령과 쿼리를 모두 나타낸다. 사용 사례에서는 명령과 쿼리에 대해 별도의 추상화를 생성한다. 먼저 ICommand 인터페이스의 정의는 다음과 같다. using MediatR; n.. 2023. 11. 28.
Entity Framework Core 개념 / 장단점 / 코드 예제 / 사용 방법 / 데이터 가져오기, 수정, 삭제 / 샘플 코드 EF Core? EF Core는 Entity Framework의 경량화된 버전으로, .NET Core 및 .NET 5 이상에서 사용할 수 있다. 데이터베이스와의 상호 작용을 단순화하고 개발자가 데이터베이스에 대한 쿼리 및 조작을 수행할 수 있는 ORM(Object-Relational Mapping) 도구이다. 주요 기능 데이터베이스에 대한 CRUD(Create, Read, Update, Delete) 작업을 지원한다. LINQ(Language Integrated Query)를 사용하여 데이터베이스 쿼리를 작성할 수 있다. 데이터베이스 스키마를 코드로 정의할 수 있는 Code First 접근 방식을 제공한다. 다양한 데이터베이스 시스템과 호환된다. EF Core의 장점 개발자가 데이터베이스와의 상호 작용을.. 2023. 11. 26.
[C#] JWS 생성 (JSON Web Signature) / 검증 / RS256 용어 설명 JWT (JSON Web Token) JSON 형식 토큰의 표준 [RFC-7519] 장점: 권한 부여, 정보 교환시 유용 형식: header, payload, signatrue의 3가지로 구성되어 있다. 사이에 점을 추가해서 header.payload.signature로 표현된다. const token = base64urlEncoding(header) + '.' + base64urlEncoding(payload) + '.' + base64urlEncoding(signature); JWS (JSON Web Signature) JSON Web Signature 를 의미한다. [RFC-7515] JWT와 JWS의 차이 JWT는 클레임 기반의 웹 토큰으로 사용자의 인증, .. 2023. 8. 8.
[ASP.NET] Entity Framework Core Entity Framework core 데이터 연동방식을 두가지로 제공한다. 1. Code-First 방식: 코드 작성 우선주의 마이그레이션 : 미리 작성된 코드로 데이터베이스에 테이블과 컬럼을 생성하는 방식 2. Database-First 방식: 데이터베이서 작업 우선주의 모든 테이블과 컬럼을 데이터베이스에서 테이블과 컬럼을 우선 생성한다. Entity Data Modeling : 코드를 손쉽게 작성할 수 있도록 도와준다. 먼저 Code-First 방식으로 진행해보기로 한다. Code First 방식 이전 게시글에서 작성한 프로젝트를 열어서 그중 DataModels/User.cs 파일을 열고, DataAnnotations 를 추가하고 , 어노테이션을 작성한다. [Key, StringLength(50),.. 2021. 12. 13.
[ASP.NET] 개요 / MVC 패턴 / 의존성 주입 패턴 닷넷 코어는 패턴 프로그래밍에 최적화 되어있다. 패턴 ? 사용자에게 보다 나은 서비스를 제공 프로그램 개발 ? 테스트와 유지보수가 쉬워야 한다. 애플리케이션의 존재 목적 ? 사용자를 만족시키는것 닷넷코어는 아래 2가지를 사용한다 MVC 패턴 (Model-View-Controller) 의존성 주입 패턴 (Dependency Injection) 2021-12-07 MVC 패턴(Model-View-Controller) MVC 프로젝트 생성 C - MembershipController 컨트롤러 폴더에 추가 public IActionResult Login(LoginInfo login) {} 생성 내용에는 if문 내부에서 ModelState.IsValid 를 확인 if문으로 ID, PW가 일치하는지 확인하고 일치하.. 2021. 12. 7.
반응형