ASP.NET Core Razor Pages? · 2018-03-02 · ASP.NET Core Razor Pages?...

Post on 06-May-2020

24 views 0 download

Transcript of ASP.NET Core Razor Pages? · 2018-03-02 · ASP.NET Core Razor Pages?...

ASP.NET Core Razor Pages?

• 페이지 기반의 웹앱을 쉽고, 생산적으로 만들 수 있는 ASP.NET Core MVC의새로운 기능

• 필요 구성 요소• .NET Core 2.0.0• Visual Studio를 사용할 경우 Visual Studio 2017 15.3 버전 이상

• ASP.NET 및 웹 개발• .NET Core 플랫폼 간 개발

새로운 웹앱 템플릿

간소화된 프로젝트 구조

Core MVC Razor Pages

@page

• Razor Pages의 핵심 요소

• 페이지의 첫 번째 지시문으로 @page 를 추가.

• 파일이 MVC 액션으로 동작할 수 있게 해 줌.• 컨트롤러를 거치지 않고 요청을 직접 처리.

PageModel

• “<PageName>Model” 형태로 정의되며 페이지와 동일한 네임스페이스에 위치.• 비하인드 코드 파일 형태(ex : PageName.cshtml.cs)• UI 영역과 로직 영역을 분리.

• @model 지시문을 사용하여 지정.

Controller, Action Method

• 별도의 Controller가 필요 없음.

• Action Method를 Handler로 대체.

• Handler는 On[Http Verb]형태로 정의.• OnGet (또는 OnGetAsync)• OnPost (또는 OnPostAsync)• 기타

• 명명된 Handler 사용 가능• OnGetProduct(), OnPostProductList(), …

파일 시스템 기반의 URL 연결

• 페이지에 대한 URL 연결은 파일 시스템 기반의 페이지 위치에 따라 결정• /Pages 폴더에서 시작되는 파일 경로

• @page 지시문을 사용하여 Route Parameter 추가 가능• @page “{id:int}” -> /pagename/1

간단한 정적 페이지 생성 시나리오(Core MVC)

Controller 추가

Action Method 추가

View 폴더 추가

View 파일 추가

간단한 정적 페이지 생성 시나리오(Razor Pages)

Page 추가

DEMOASP.NET Core Razor Pages 살펴보기

Razor Pages의 장점 및 활용 방안(아주 조심스럽게 생각해보는)

• Easy! Simple!

• 웹 페이지를 생성하는 데 최적화되어 있음.

• HTML View, Json, 파일, 기타 등등 다양한 동작을 포함하는 MVC 컨트롤러가 생성되는 것을 방지할 수 있음.

Razor Pages MVC / Web API

HTML View REST API, SOA

참고 자료

• Introduction to Razor Pages in ASP.NET Core• https://docs.microsoft.com/en-us/aspnet/core/mvc/razor-pages

• Get started with Razor Pages in ASP.NET Core• https://docs.microsoft.com/en-us/aspnet/core/tutorials/razor-pages

• Introducing Razor Pages• https://channel9.msdn.com//events/dotnetConf/2017/T317/

• ASP.NET Razor Pages vs MVC: How Do Razor Pages Fit in Your Toolbox?• https://stackify.com/asp-net-razor-pages-vs-mvc/

커뮤니티 소개

ASP.NET Korea User Group : http://aspnet.kr

TAEYO.NET : http://taeyo.net