.NET/ASP.NET

    ASP.NET Core - 11. View와 Controller - 2

    ASP.NET Core - 11. View와 Controller - 2

    이번 글에서는 View와 Controller 1에 이어서 Razor View에서 제공되는 더 많은 기능들에 대해 살펴보고자 합니다. 구체적으로는 View Bag을 사용해 어떻게 필요한 Data를 View로 전달할 수 있을지, View에서 중복되는 부분을 해결할 수 있는 Layout과 Layout section에 대한 사용, 그리고 어떻게 표현식으로부터의 결과를 Encoding하고 또 Encoding처리를 막을 수 있는지에 대한 것들을 하나씩 알아보도록 하겠습니다. 1. Project 준비하기 예제를 위한 Project는 이전의 Project를 그대로 사용할 것이며 다만 HomeController.cs file을 아래 내용으로 조정하여 시작할 것입니다. using Microsoft.AspNetCore.Mv..

    ASP.NET Core - 10. View와 Controller - 1

    ASP.NET Core - 10. View와 Controller - 1

    이번 글에서는 HTML응답을 생성하여 사용자(XML 혹은 JSON을 응답함으로써 다른 Application에서 사용될 수 있도록 하는 것과는 다른)에게 직접적으로 표시할 수 있도록 하는 Razor View Engine에 대해 알아볼 것입니다. View는 C#표현식을 사용하고 HTML응답을 생성하기 위해 view engine에서 처리될 수 있는 HTML조각을 포함하는 file입니다. 여기서는 View가 어떤 식으로 동작하는지를 확인하고 이들이 action method에서 어떻게 사용되는지를 알아보고 또한 여기에 포함되는 다양한 C#표현식에 대해서도 다뤄볼 것입니다. 1. Project 준비하기 예제로 사용될 Project는 이전에 사용하던 Project를 그대로 재사용할 것입니다. 다만 Program.cs..

    ASP.NET Core - 9. 고급 Web Service 기능

    ASP.NET Core - 9. 고급 Web Service 기능

    이번 Posting에서는 RESTful web service를 생성할 때 사용할 수 있는 고급 기능들에 대해서 알아보고자 합니다. 대략적으로 Entity Framework Core사용 시 관련 Data를 다루는 방법과 HTTP PATCH method 지원을 추가하는 방법, web service의 명세를 서술하기 위한 OpenAPI사용법 등에 관한 내용을 알아볼 것입니다. 1. 준비사항 해당 글의 예제는 이전글에서 사용하던 Project를 그대로 이어서 사용할 것입니다. 다만 추가적으로 Controllers folder에 SuppliersController.cs라는 file을 아래 내용으로 추가해 줍니다. using Microsoft.AspNetCore.Mvc; using MyWebApp.Models; n..

    ASP.NET Core - 8. RESTful Web Service

    ASP.NET Core - 8. RESTful Web Service

    Web Service는 전체 ASP.NET Core에서 필수를 이루는 한 부분으로서 HTTP 요청을 수용하고 Data를 포함한 응답을 생성합니다. 이번 글에서는 어떻게 MVC Framework를 통해 이러한 기능을 제공할 수 있는지에 관해 알아보고자 합니다. 1. RESTful Web Service 이해하기 Web service는 HTTP요청에 대해 순수 Data를 응답하는 것이며 Javascript와 같이 Client Application에서 사용될 수 있습니다. Web Service를 구축하는데 특별한 규칙이 있는 것은 아니지만 가장 일반적으로는 REST(Representational State Transfer) Pattern을 따르는 것입니다. 물론 REST를 위한 공시적인 사양이 있는 것은 아니고..

    ASP.NET Core - 7. 예제 프로젝트 만들기

    ASP.NET Core - 7. 예제 프로젝트 만들기

    이번에는 향후 사용하게될 간단한 Project를 생성하고자 합니다. 해당 Project에는 샘플 Database를 사용한 Data Model과 HTML Content의 형식화를 위한 client-side package, 그리고 간단한 요청 Pipeline을 포함할 것입니다. 1. Project 생성 Visual Studio를 실행하여 File -> New -> Project Item을 선택합니다. Project Template중 ASP.NET Core Empty를 선택합니다. 사용할 Project명을 지정합니다. .NET 6.0을 선택합니다. 최소한의 Project를 생성합니다. 2. Data Model 아래 Sample Database를 내려받아 Microsoft SQL Server Management..

    ASP.NET Core - 6. Data Caching

    ASP.NET Core - 6. Data Caching

    이제까지의 만들어왔던 예제는 모두 각 요청에 대해서만 유효한 응답이 이루어지던 것으로서 간단한 문자열이나 작은 일부 HTML을 처리하는데 유용한 방법이었습니다. 그러나 대부분 Project의 경우 생성하는데 고비용이면서 최대한 효휼적으로 사용되어야 하는 Data를 다루게 됩니다. 이에 따라 ASP.NET Core에서 제공하는 data caching과 전체 응답을 caching 하는 것에 대해 알아보고자 합니다. 1. Project 준비하기 예제를 위한 Project는 이전에 만들었던 Project를 그대로 사용할 것입니다. 다만 Program.cs의 내용은 아래와 같이 변경합니다. var builder = WebApplication.CreateBuilder(args); var app = builder.B..

    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..