.NET/ASP.NET

    ASP.NET Core - 5. Platform 기능 활용하기 - 2

    ASP.NET Core - 5. Platform 기능 활용하기 - 2

    이번 글에서는 지난 글에 이이서 ASP.NET Core platform에서 제공하는 기본적인 기능들에 대해 계속 설명을 이어나가고자 합니다. 우선 cookie에 관해 알아볼 텐데 어떻게 cookie가 사용되며 이를 위해 사용자의 동의가 어떠한 방법으로 관리될 수 있는지, 그리고 cookie의 강력한 대안인 session을 어떻게 다룰지에 대해서도 함께 알아볼 것입니다. 이어서 HTTPS에 대한 요청 처리와 HTTPS로의 요청 강제할 수 있는 방법, 그리고 error의 처리방법과 함께 Host header에 기반한 요청을 어떻게 filter 할 수 있을지에 대해서도 같이 알아보겠습니다. 아래 표는 위에서 언급한 주요 내용에 대해 간결한 특징을 나열한 것입니다. cookie 사용 cookie를 일고 쓰기 위..

    ASP.NET Core - 4. Platform 기능 활용하기 - 1

    ASP.NET Core - 4. Platform 기능 활용하기 - 1

    ASP.NET Core는 일반적으로 Web개발에 필요한 여러 기능들을 제공하는 일련의 Service와 Middleware component를 포함하고 있습니다. 이번에는 기본적인 Service와 Middleware에 초점을 맞추어 3가지 정도의 가장 중요하고 폭넓게 사용되는 기능인 application 설정(구성), logging, 정적 content등에 대해 알아보고자 합니다. 1. Project 준비하기 실습을 위한 Project는 이전 글에 이어서 계속 사용할 것입니다. 다만 Program.cs는 아래와 같이 작성했던 Service와 Middleware를 모두 삭제하고 var builder = WebApplication.CreateBuilder(args); var app = builder.Build..

    ASP.NET Core - 3. 의존성 주입(Dependency Injection)

    ASP.NET Core - 3. 의존성 주입(Dependency Injection)

    Service는 Middleware와 Endpoint사이에 공유되는 객체라고 할 수 있습니다. Service가 제공할 수 있는 기능에는 제한이 없지만 일반적인 경우 대부분 Application의 여러 부분에 걸쳐 필요한 작업(Logging이나 Database 접근과 같은)에 사용됩니다. ASP.NET Core 의존성 주입기능은 Service를 생성하고 사용하는 데 사용됩니다. 이제 ASP.NET Core platform에서 의존성 주입이 어떻게 지원되는지를 알아보고 의존성 주입을 사용함으로써 어떠한 문제를 해결할 수 있는지를 천천히 확인해 보도록 하겠습니다. 1. Project 만들기 예제로 사용하게될 Project는 [.NET/ASP.NET] - ASP.NET Core - 2. 라우팅(Routing) ..

    ASP.NET Core - 2. 라우팅(Routing)

    ASP.NET Core - 2. 라우팅(Routing)

    URL routing의 기본적인 기능은 요청 URL에 따라 그에 맞는 처리를 실행하여 응답을 생성하는 것입니다. 이제 예제를 통해 Routing에 관한 전반적인 내용을 살펴보도록 하겠습니다. 1. 시작하기 예제는 2022.09.16 - [.NET/ASP.NET] - ASP.NET Core - 1. 요청 파이프라인(Request Pipeline)과 Service, Middleware component등 ASP.NET Core Platform에 관한 전반적인 이해 ASP.NET Core - 1. 요청 파이프라인(Request Pipeline)과 Service, Middleware component등 ASP.NET Core Platform에 관한 ASP.NET Core는 MVC나 Blazor와 같은 기능을 통..

    ASP.NET Core - 1. 요청 파이프라인(Request Pipeline)과 Service, Middleware component등 ASP.NET Core Platform에 관한 전반적인 이해

    ASP.NET Core - 1. 요청 파이프라인(Request Pipeline)과 Service, Middleware component등 ASP.NET Core Platform에 관한 전반적인 이해

    ASP.NET Core는 MVC나 Blazor와 같은 기능을 통해 Web Application을 개발하기 위한 Platform입니다. 이번에는 ASP.NET Core에 관한 특징 및 구조 그리고 HTTP 요청을 처리하는 요청 Pipeline에 대해 알아보고 customize 할 수 있는 방법에 대해서도 살펴볼 것입니다. 1. 시작전 준비사항 우선 아래 명령을 통해 최소한의 ASP.NET Core Project를 생성하도록 합니다. 예제에서 Project는 MyWebApp으로 지정하였습니다. dotnet new globaljson --sdk-version 6.0.400 --output MyWebApp dotnet new web --no-https --output MyWebApp --framework net..

    [ASP.NET Core] Shopping mall project - 보안과 배포

    [ASP.NET Core] Shopping mall project - 보안과 배포

    ASP.NET Core는 ASP.NET Core platform과 각각의 개별 Application에 정교하게 통한된 Identity system을 통해서 인증과 권한 부여에 관한 기능을 제공하고 있습니다. 이러한 인증 기능을 통해 Admin이라는 관리 사용자에 대한 보안설정을 project에 적용함으로써 인증된 관리 사용자 만이 관리자 기능으로 접근할 수 있도록 처리할 것입니다. 물론 ASP.NET Core Identity는 그것 자체로 사용자에 대한 다양한 인증 및 권한에 대한 기능을 제공하고 있는데 이에 대한 추가적인 내용은 추후에도 알아볼 것입니다. 1. Identity Database 생성 ASP.NET Identity system은 유연한 구성 및 확장이 가능하며 사용자 data가 저장되는 방..

    [ASP.NET Core] Shopping mall project - 관리자기능

    [ASP.NET Core] Shopping mall project - 관리자기능

    이전에 만든 project에서는 사용자가 제품을 선택하고 해당 제품을 장바구니에 담은 뒤 자신의 정보를 입력하여 주문을 완료하는 것까지의 기능을 구현했습니다. 그러나 지속적인 shopping mall의 관리를 위해서는 사용자로부터의 주문과 제품을 관리할 수 있는 관리자의 기능도 필요할 것입니다. 관리자의 기능은 Blazor를 사용해 구현할 것입니다. Blazor는 Client-Side인 Javascript Code를 ASP.NET Core에 의해 실행되는 Server-Side Code와 결합하고 persistent HTTP 연결에 의하여 연결됩니다. 참고로 해당 글에서는 Server에서 Code를 실행하는 Blazor Server를 사용할 것입니다. 또 다른 것으로 Blazor WebAssembly가 있..

    [ASP.NET Core] Shopping mall project - 주문완료하기

    [ASP.NET Core] Shopping mall project - 주문완료하기

    아래 글에서는 [.NET/ASP.NET Core] - [ASP.NET Core] Shopping mall project - Category탐색과 장바구니 구현 [ASP.NET Core] Shopping mall project - Category탐색과 장바구니 구현 1. Category 탐색 기능 이전 예제 Project의 제품 표시에는 단순히 제품만 나열할 뿐이지만 제품의 category별로 해당 제품을 살펴볼 수 있도록 하면 사용자에게 좀 더 편리함을 제공해 줄 수 있을 것입 lab.cliel.com 간단히 Cart기능을 구현해 보았는데 계속 이어서 고객이 주문을 완료하기 위한 처리를 추가해 보고자 합니다. 1. Service를 통한 Cart Model의 보완 이전 글에서 Cart Model을 만들어 ..