자습서: ASP.NET Core에서 Pages 시작 Razor

참고 항목

이 문서의 최신 버전은 아닙니다. 현재 릴리스는 이 문서의 .NET 8 버전을 참조 하세요.

Important

이 정보는 상업적으로 출시되기 전에 실질적으로 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적, 또는 묵시적인 보증을 하지 않습니다.

현재 릴리스는 이 문서의 .NET 8 버전을 참조 하세요.

작성자: Rick Anderson

ASP.NET Core Razor Pages 웹앱을 빌드하는 작업의 기본 사항을 설명하는 자습서 시리즈 중 첫 번째입니다.

컨트롤러 및 보기에 익숙한 개발자를 대상으로 한 고급 소개는 Razor Pages 소개를 참조하세요. 비디오 소개는 초보자를 위한 Entity Framework Core를 참조하세요.

ASP.NET Core 개발을 처음 접하며 요구 사항에 가장 적합한 ASP.NET Core 웹 UI 솔루션을 잘 모르는 경우 ASP.NET Core UI 선택을 참조하세요.

이 자습서의 끝부분에는 동영상 데이터베이스를 관리하는 Razor Pages 웹앱이 있습니다.

Home 또는 인덱스 페이지

필수 조건

Razor Pages 웹앱 만들기

  • Visual Studio를 시작하고 새 프로젝트를 선택합니다.

  • 새 프로젝트 만들기 대화 상자에서 ASP.NET Core Web App(Razor페이지)다음> 선택합니다.

  • 새 프로젝트 구성 대화 상자에서 프로젝트 이름으로 RazorPagesMovie를 입력합니다. 대문자 표시를 포함하여 프로젝트 이름을 RazorPagesMovie로 지정해야 예제 코드를 복사해 붙여넣을 때 네임스페이스가 일치합니다.

  • 다음을 선택합니다.

  • 추가 정보 대화 상자에서 다음을 수행합니다.

    • .NET 8.0(장기 지원)을 선택합니다.
    • 확인: 최상위 문을 사용 안 함이 선택 취소되어 있습니다.
  • 만들기를 실행합니다.

    추가 정보

    다음 시작 프로젝트를 만듭니다.

    솔루션 탐색기

프로젝트를 만드는 다른 방법은 Visual Studio에서 새 프로젝트 만들기를 참조하세요.

앱 실행

솔루션 탐색기 PagesMovie선택한Razor 다음 Ctrl+F5 키를 눌러 디버거 없이 앱을 실행합니다.

프로젝트가 SSL을 사용하도록 아직 구성되지 않은 경우 Visual Studio에 다음 대화 상자가 표시됩니다.

이 프로젝트는 SSL을 사용하도록 구성되었습니다. 브라우저에서 SSL 경고를 피하려면 IIS Express에서 생성한 자체 서명된 인증서를 신뢰하도록 선택할 수 있습니다. IIS Express SSL 인증서를 신뢰하시겠습니까?

IIS Express SSL 인증서를 신뢰하는 경우 를 선택합니다.

다음 대화 상자가 표시됩니다.

보안 경고 대화 상자

개발 인증서를 신뢰하는 데 동의하는 경우 를 선택합니다.

Firefox 브라우저를 신뢰하는 방법에 대한 자세한 내용은 Firefox SEC_ERROR_INADEQUATE_KEY_USAGE 인증서 오류를 참조하세요.

Visual Studio:

  • Kestrel 서버를 시작하는 앱을 실행합니다.
  • https://localhost:<port>에서 앱 UI를 표시하는 기본 브라우저를 시작합니다. <port>는 앱을 만들 때 할당되는 임의 포트입니다.

브라우저 창을 닫습니다.

프로젝트 파일 검토

다음 섹션에는 작업할 주요 프로젝트 폴더 및 파일에 대한 개요가 포함되어 있습니다.

페이지 폴더

Razor Pages 및 지원 파일이 들어 있습니다. 각 Razor 페이지는 파일 쌍입니다.

  • Razor 구문을 사용하는 C# 코드가 있는 HTML 태그를 포함하는 .cshtml파일입니다.
  • .cshtml.cs 페이지 이벤트를 처리하는 C# 코드가 있는 파일입니다.

지원 파일에는 밑줄로 시작하는 이름이 있습니다. 예를 들어 파일은 _Layout.cshtml 모든 페이지에 공통적인 UI 요소를 구성합니다. _Layout.cshtml 페이지 맨 위에 있는 탐색 메뉴를 설정하고 페이지 맨 아래에 저작권 표시를 설정합니다. 자세한 내용은 ASP.NET Core의 레이아웃을 참조하세요.

wwwroot 폴더

HTML 파일, JavaScript 파일, CSS 파일과 같은 정적 자산을 포함합니다. 자세한 내용은 ASP.NET Core의 정적 파일을 참조하세요.

appsettings.json

연결 문자열과 같은 구성 데이터를 포함합니다. 자세한 내용은 ASP.NET Core의 구성을 참조하세요.

Program.cs

다음 코드가 포함되어 있습니다.

var builder = WebApplication.CreateBuilder(args);

// Add services to the container.
builder.Services.AddRazorPages();

var app = builder.Build();

// Configure the HTTP request pipeline.
if (!app.Environment.IsDevelopment())
{
    app.UseExceptionHandler("/Error");
    // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
    app.UseHsts();
}

app.UseHttpsRedirection();
app.UseStaticFiles();

app.UseRouting();

app.UseAuthorization();

app.MapRazorPages();

app.Run();

이 파일의 다음 코드 줄은 미리 구성된 기본값으로 WebApplicationBuilder를 만들고, DI(종속성 주입) 컨테이너에 Razor 페이지 지원을 추가하고, 앱을 빌드합니다.

var builder = WebApplication.CreateBuilder(args);

// Add services to the container.
builder.Services.AddRazorPages();

var app = builder.Build();

개발자 예외 페이지는 기본적으로 사용하도록 설정되어 있으며 예외에 대한 유용한 정보를 제공합니다. 개발자 예외 페이지가 중요한 정보를 누출할 수 있으므로 개발 모드에서 프로덕션 앱을 실행해서는 안 됩니다.

앱이 개발 모드에서 실행되지 않을 경우 다음 코드는 예외 엔드포인트를 /Error로 설정하고 HTTP HSTS(Strict Transport Security Protocol)를 사용하도록 설정합니다.

// Configure the HTTP request pipeline.
if (!app.Environment.IsDevelopment())
{
    app.UseExceptionHandler("/Error");
    // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
    app.UseHsts();
}

예를 들어 위의 코드는 앱이 프로덕션 또는 테스트 모드에 있을 때 실행됩니다. 자세한 내용은 ASP.NET Core에서 여러 환경 사용을 참조하세요.

다음 코드는 다양한 미들웨어를 사용하도록 설정합니다.

  • app.UseHttpsRedirection(); : HTTP 요청을 HTTPS로 리디렉션합니다.
  • app.UseStaticFiles(); : HTML, CSS, 이미지, JavaScript와 같은 정적 파일이 제공되도록 설정합니다. 자세한 내용은 ASP.NET Core의 정적 파일을 참조하세요.
  • app.UseRouting(); : 경로 일치를 미들웨어 파이프라인에 추가합니다. 자세한 내용은 ASP.NET Core의 라우팅을 참조하세요.
  • app.MapRazorPages(); : Razor Pages에 대한 엔드포인트 라우팅을 구성합니다.
  • app.UseAuthorization(); : 사용자에게 보안 리소스에 액세스할 수 있는 권한을 부여합니다. 이 앱은 권한 부여를 사용하지 않으므로 이 줄을 제거할 수 있습니다.
  • app.Run();: 앱을 실행합니다.

완료된 샘플 문제 해결

해결할 수 없는 문제가 발생한 경우 완료된 프로젝트와 코드를 비교합니다. 완료된 프로젝트를 보거나 다운로드합니다(다운로드 방법).

다음 단계

ASP.NET Core Razor Pages 웹앱을 빌드하는 작업의 기본 사항을 설명하는 자습서 시리즈 중 첫 번째입니다.

컨트롤러 및 보기에 익숙한 개발자를 대상으로 한 고급 소개는 Razor Pages 소개를 참조하세요. 비디오 소개는 초보자를 위한 Entity Framework Core를 참조하세요.

ASP.NET Core 개발을 처음 접하며 요구 사항에 가장 적합한 ASP.NET Core 웹 UI 솔루션을 잘 모르는 경우 ASP.NET Core UI 선택을 참조하세요.

이 자습서의 끝부분에는 동영상 데이터베이스를 관리하는 Razor Pages 웹앱이 있습니다.

Home 또는 인덱스 페이지

필수 조건

Razor Pages 웹앱 만들기

  • Visual Studio를 시작하고 새 프로젝트 만들기를 선택합니다.

  • 새 프로젝트 만들기 대화 상자에서 ASP.NET Core 웹앱>다음을 선택합니다.

  • 새 프로젝트 구성 대화 상자에서 프로젝트 이름으로 RazorPagesMovie를 입력합니다. 대문자 표시를 포함하여 프로젝트 이름을 RazorPagesMovie로 지정해야 예제 코드를 복사해 붙여넣을 때 네임스페이스가 일치합니다.

  • 다음을 선택합니다.

  • 추가 정보 대화 상자에서 다음을 수행합니다.

    • .NET 7.0(표준 용어 지원)을 선택합니다.
    • 확인: 최상위 문을 사용 안 함이 선택 취소되어 있습니다.
  • 만들기를 실행합니다.

    추가 정보

    다음 시작 프로젝트를 만듭니다.

    솔루션 탐색기

프로젝트를 만드는 다른 방법은 Visual Studio에서 새 프로젝트 만들기를 참조하세요.

앱 실행

솔루션 탐색기 PagesMovie선택한Razor 다음 Ctrl+F5 키를 눌러 디버거 없이 앱을 실행합니다.

프로젝트가 SSL을 사용하도록 아직 구성되지 않은 경우 Visual Studio에 다음 대화 상자가 표시됩니다.

이 프로젝트는 SSL을 사용하도록 구성되었습니다. 브라우저에서 SSL 경고를 피하려면 IIS Express에서 생성한 자체 서명된 인증서를 신뢰하도록 선택할 수 있습니다. IIS Express SSL 인증서를 신뢰하시겠습니까?

IIS Express SSL 인증서를 신뢰하는 경우 를 선택합니다.

다음 대화 상자가 표시됩니다.

보안 경고 대화 상자

개발 인증서를 신뢰하는 데 동의하는 경우 를 선택합니다.

Firefox 브라우저를 신뢰하는 방법에 대한 자세한 내용은 Firefox SEC_ERROR_INADEQUATE_KEY_USAGE 인증서 오류를 참조하세요.

Visual Studio:

  • Kestrel 서버를 시작하는 앱을 실행합니다.
  • https://localhost:<port>에서 앱 UI를 표시하는 기본 브라우저를 시작합니다. <port>는 앱을 만들 때 할당되는 임의 포트입니다.

브라우저 창을 닫습니다.

프로젝트 파일 검토

다음 섹션에는 작업할 주요 프로젝트 폴더 및 파일에 대한 개요가 포함되어 있습니다.

페이지 폴더

Razor Pages 및 지원 파일이 들어 있습니다. 각 Razor 페이지는 파일 쌍입니다.

  • Razor 구문을 사용하는 C# 코드가 있는 HTML 태그를 포함하는 .cshtml파일입니다.
  • .cshtml.cs 페이지 이벤트를 처리하는 C# 코드가 있는 파일입니다.

지원 파일에는 밑줄로 시작하는 이름이 있습니다. 예를 들어 파일은 _Layout.cshtml 모든 페이지에 공통적인 UI 요소를 구성합니다. _Layout.cshtml 페이지 맨 위에 있는 탐색 메뉴를 설정하고 페이지 맨 아래에 저작권 표시를 설정합니다. 자세한 내용은 ASP.NET Core의 레이아웃을 참조하세요.

wwwroot 폴더

HTML 파일, JavaScript 파일, CSS 파일과 같은 정적 자산을 포함합니다. 자세한 내용은 ASP.NET Core의 정적 파일을 참조하세요.

appsettings.json

연결 문자열과 같은 구성 데이터를 포함합니다. 자세한 내용은 ASP.NET Core의 구성을 참조하세요.

Program.cs

다음 코드가 포함되어 있습니다.

var builder = WebApplication.CreateBuilder(args);

// Add services to the container.
builder.Services.AddRazorPages();

var app = builder.Build();

// Configure the HTTP request pipeline.
if (!app.Environment.IsDevelopment())
{
    app.UseExceptionHandler("/Error");
    // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
    app.UseHsts();
}

app.UseHttpsRedirection();
app.UseStaticFiles();

app.UseRouting();

app.UseAuthorization();

app.MapRazorPages();

app.Run();

이 파일의 다음 코드 줄은 미리 구성된 기본값으로 WebApplicationBuilder를 만들고, DI(종속성 주입) 컨테이너에 Razor 페이지 지원을 추가하고, 앱을 빌드합니다.

var builder = WebApplication.CreateBuilder(args);

// Add services to the container.
builder.Services.AddRazorPages();

var app = builder.Build();

개발자 예외 페이지는 기본적으로 사용하도록 설정되어 있으며 예외에 대한 유용한 정보를 제공합니다. 개발자 예외 페이지가 중요한 정보를 누출할 수 있으므로 개발 모드에서 프로덕션 앱을 실행해서는 안 됩니다.

앱이 개발 모드에서 실행되지 않을 경우 다음 코드는 예외 엔드포인트를 /Error로 설정하고 HTTP HSTS(Strict Transport Security Protocol)를 사용하도록 설정합니다.

// Configure the HTTP request pipeline.
if (!app.Environment.IsDevelopment())
{
    app.UseExceptionHandler("/Error");
    // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
    app.UseHsts();
}

예를 들어 위의 코드는 앱이 프로덕션 또는 테스트 모드에 있을 때 실행됩니다. 자세한 내용은 ASP.NET Core에서 여러 환경 사용을 참조하세요.

다음 코드는 다양한 미들웨어를 사용하도록 설정합니다.

  • app.UseHttpsRedirection(); : HTTP 요청을 HTTPS로 리디렉션합니다.
  • app.UseStaticFiles(); : HTML, CSS, 이미지, JavaScript와 같은 정적 파일이 제공되도록 설정합니다. 자세한 내용은 ASP.NET Core의 정적 파일을 참조하세요.
  • app.UseRouting(); : 경로 일치를 미들웨어 파이프라인에 추가합니다. 자세한 내용은 ASP.NET Core의 라우팅을 참조하세요.
  • app.MapRazorPages(); : Razor Pages에 대한 엔드포인트 라우팅을 구성합니다.
  • app.UseAuthorization(); : 사용자에게 보안 리소스에 액세스할 수 있는 권한을 부여합니다. 이 앱은 권한 부여를 사용하지 않으므로 이 줄을 제거할 수 있습니다.
  • app.Run();: 앱을 실행합니다.

완료된 샘플 문제 해결

해결할 수 없는 문제가 발생한 경우 완료된 프로젝트와 코드를 비교합니다. 완료된 프로젝트를 보거나 다운로드합니다(다운로드 방법).

다음 단계

ASP.NET Core Razor Pages 웹앱을 빌드하는 작업의 기본 사항을 설명하는 자습서 시리즈 중 첫 번째입니다.

컨트롤러 및 보기에 익숙한 개발자를 대상으로 한 고급 소개는 Razor Pages 소개를 참조하세요. 비디오 소개는 초보자를 위한 Entity Framework Core를 참조하세요.

ASP.NET Core 개발을 처음 접하며 요구 사항에 가장 적합한 ASP.NET Core 웹 UI 솔루션을 잘 모르는 경우 ASP.NET Core UI 선택을 참조하세요.

시리즈가 끝나면 영화의 데이터베이스를 관리하는 앱이 생성됩니다.

이 자습서에서는 다음을 수행합니다.

  • Razor Pages 웹앱을 만듭니다.
  • 앱을 실행합니다.
  • 프로젝트 파일을 검사합니다.

이 자습서를 마치면 이후의 자습서에서 개선할 Razor Pages 웹앱을 사용할 수 있습니다.

Home 또는 인덱스 페이지

필수 조건

Razor Pages 웹앱 만들기

  1. Visual Studio 2022를 시작하고 새 프로젝트 만들기를 선택합니다.

    시작 창에서 새 프로젝트 만들기

  2. 새 프로젝트 만들기 대화 상자에서 ASP.NET Core 웹앱을 선택한 후, 다음을 선택합니다.

    ASP.NET Core 웹앱 만들기

  3. 새 프로젝트 구성 대화 상자에서 프로젝트 이름으로 RazorPagesMovie를 입력합니다. 대문자 표시를 포함하여 프로젝트 이름을 RazorPagesMovie로 지정해야 예제 코드를 복사해 붙여넣을 때 네임스페이스가 일치합니다.

    새 프로젝트 구성

  4. 다음을 선택합니다.

  5. 추가 정보 대화 상자에서 .NET 6.0(장기 지원)을 선택한 다음 만들기를 선택합니다.

    추가 정보

다음 시작 프로젝트를 만듭니다.

솔루션 탐색기

앱 실행

솔루션 탐색기에서 RazorPagesMovie를 선택한 다음, Ctrl+F5를 눌러 디버거 없이 실행합니다.

프로젝트가 SSL을 사용하도록 아직 구성되지 않은 경우 Visual Studio에 다음 대화 상자가 표시됩니다.

이 프로젝트는 SSL을 사용하도록 구성되었습니다. 브라우저에서 SSL 경고를 피하려면 IIS Express에서 생성한 자체 서명된 인증서를 신뢰하도록 선택할 수 있습니다. IIS Express SSL 인증서를 신뢰하시겠습니까?

IIS Express SSL 인증서를 신뢰하는 경우 를 선택합니다.

다음 대화 상자가 표시됩니다.

보안 경고 대화 상자

개발 인증서를 신뢰하는 데 동의하는 경우 를 선택합니다.

Firefox 브라우저를 신뢰하는 방법에 대한 자세한 내용은 Firefox SEC_ERROR_INADEQUATE_KEY_USAGE 인증서 오류를 참조하세요.

Visual Studio:

  • Kestrel 서버를 시작하는 앱을 실행합니다.
  • https://localhost:5001에서 앱 UI를 표시하는 기본 브라우저를 시작합니다.

프로젝트 파일 검토

다음 섹션에는 작업할 주요 프로젝트 폴더 및 파일에 대한 개요가 포함되어 있습니다.

페이지 폴더

Razor Pages 및 지원 파일이 들어 있습니다. 각 Razor 페이지는 파일 쌍입니다.

  • Razor 구문을 사용하는 C# 코드가 있는 HTML 태그를 포함하는 .cshtml파일입니다.
  • .cshtml.cs 페이지 이벤트를 처리하는 C# 코드가 있는 파일입니다.

지원 파일에는 밑줄로 시작하는 이름이 있습니다. 예를 들어 파일은 _Layout.cshtml 모든 페이지에 공통적인 UI 요소를 구성합니다. 이 파일은 페이지 맨 위에 있는 탐색 메뉴를 설정하고 페이지 맨 아래에 저작권 표시를 설정합니다. 자세한 내용은 ASP.NET Core의 레이아웃을 참조하세요.

wwwroot 폴더

HTML 파일, JavaScript 파일, CSS 파일과 같은 정적 자산을 포함합니다. 자세한 내용은 ASP.NET Core의 정적 파일을 참조하세요.

appsettings.json

연결 문자열과 같은 구성 데이터를 포함합니다. 자세한 내용은 ASP.NET Core의 구성을 참조하세요.

Program.cs

다음 코드가 포함되어 있습니다.

var builder = WebApplication.CreateBuilder(args);

// Add services to the container.
builder.Services.AddRazorPages();

var app = builder.Build();

// Configure the HTTP request pipeline.
if (!app.Environment.IsDevelopment())
{
    app.UseExceptionHandler("/Error");
    // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
    app.UseHsts();
}

app.UseHttpsRedirection();
app.UseStaticFiles();

app.UseRouting();

app.UseAuthorization();

app.MapRazorPages();

app.Run();

이 파일의 다음 코드 줄은 미리 구성된 기본값으로 WebApplicationBuilder를 만들고, DI(종속성 주입) 컨테이너에 Razor 페이지 지원을 추가하고, 앱을 빌드합니다.

var builder = WebApplication.CreateBuilder(args);

// Add services to the container.
builder.Services.AddRazorPages();

var app = builder.Build();

개발자 예외 페이지는 기본적으로 사용하도록 설정되어 있으며 예외에 대한 유용한 정보를 제공합니다. 개발자 예외 페이지가 중요한 정보를 누출할 수 있으므로 개발 모드에서 프로덕션 앱을 실행해서는 안 됩니다.

앱이 개발 모드에서 실행되지 않을 경우 다음 코드는 예외 엔드포인트를 /Error로 설정하고 HTTP HSTS(Strict Transport Security Protocol)를 사용하도록 설정합니다.

// Configure the HTTP request pipeline.
if (!app.Environment.IsDevelopment())
{
    app.UseExceptionHandler("/Error");
    // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
    app.UseHsts();
}

예를 들어 위의 코드는 앱이 프로덕션 또는 테스트 모드에 있을 때 실행됩니다. 자세한 내용은 ASP.NET Core에서 여러 환경 사용을 참조하세요.

다음 코드는 다양한 미들웨어를 사용하도록 설정합니다.

  • app.UseHttpsRedirection(); : HTTP 요청을 HTTPS로 리디렉션합니다.
  • app.UseStaticFiles(); : HTML, CSS, 이미지, JavaScript와 같은 정적 파일이 제공되도록 설정합니다. 자세한 내용은 ASP.NET Core의 정적 파일을 참조하세요.
  • app.UseRouting(); : 경로 일치를 미들웨어 파이프라인에 추가합니다. 자세한 내용은 ASP.NET Core의 라우팅을 참조하세요.
  • app.MapRazorPages(); : Razor Pages에 대한 엔드포인트 라우팅을 구성합니다.
  • app.UseAuthorization(); : 사용자에게 보안 리소스에 액세스할 수 있는 권한을 부여합니다. 이 앱은 권한 부여를 사용하지 않으므로 이 줄을 제거할 수 있습니다.
  • app.Run();: 앱을 실행합니다.

완료된 샘플 문제 해결

해결할 수 없는 문제가 발생한 경우 완료된 프로젝트와 코드를 비교합니다. 완료된 프로젝트를 보거나 다운로드합니다(다운로드 방법).

다음 단계

ASP.NET Core Razor Pages 웹앱을 빌드하는 작업의 기본 사항을 설명하는 자습서 시리즈 중 첫 번째입니다.

컨트롤러 및 보기에 익숙한 개발자를 대상으로 한 고급 소개는 Razor Pages 소개를 참조하세요.

ASP.NET Core 개발을 처음 접하며 요구 사항에 가장 적합한 ASP.NET Core 웹 UI 솔루션을 잘 모르는 경우 ASP.NET Core UI 선택을 참조하세요.

시리즈가 끝나면 영화의 데이터베이스를 관리하는 앱이 생성됩니다.

이 자습서에서는 다음을 수행합니다.

  • Razor Pages 웹앱을 만듭니다.
  • 앱을 실행합니다.
  • 프로젝트 파일을 검사합니다.

이 자습서를 마치면 이후의 자습서에서 개선할 Razor Pages 웹앱을 사용할 수 있습니다.

Home 또는 인덱스 페이지

필수 조건

Razor Pages 웹앱 만들기

  1. Visual Studio를 시작하고 새 프로젝트 만들기를 선택합니다. 자세한 내용은 Visual Studio에서 새 프로젝트 만들기를 참조하세요.

    시작 창에서 새 프로젝트 만들기

  2. 새 프로젝트 만들기 대화 상자에서 ASP.NET Core 웹 애플리케이션을 선택한 후, 다음을 선택합니다.

    ASP.NET Core 웹 애플리케이션 만들기

  3. 새 프로젝트 구성 대화 상자에서 프로젝트 이름으로 RazorPagesMovie를 입력합니다. 대문자 표시를 포함하여 프로젝트 이름을 RazorPagesMovie로 지정해야 예제 코드를 복사해 붙여넣을 때 네임스페이스가 일치합니다.

  4. 만들기를 실행합니다.

    프로젝트 구성

  5. 새 ASP.NET Core 웹 애플리케이션 만들기 대화 상자에서 다음을 선택합니다.

    1. 드롭다운에서 .NET CoreASP.NET Core 5.0을 선택합니다.
    2. 웹 애플리케이션
    3. 만들기.

    ASP.NET Core 웹 앱 선택

다음 시작 프로젝트를 만듭니다.

솔루션 탐색기

앱 실행

  • Ctrl+F5를 눌러 디버거 없이 실행합니다.

    프로젝트가 SSL을 사용하도록 아직 구성되지 않은 경우 Visual Studio에 다음 대화 상자가 표시됩니다.

    이 프로젝트는 SSL을 사용하도록 구성되었습니다. 브라우저에서 SSL 경고를 피하려면 IIS Express에서 생성한 자체 서명된 인증서를 신뢰하도록 선택할 수 있습니다. IIS Express SSL 인증서를 신뢰하시겠습니까?

    IIS Express SSL 인증서를 신뢰하는 경우 를 선택합니다.

    다음 대화 상자가 표시됩니다.

    보안 경고 대화 상자

    개발 인증서를 신뢰하는 데 동의하는 경우 를 선택합니다.

    Firefox 브라우저를 신뢰하는 방법에 대한 자세한 내용은 Firefox SEC_ERROR_INADEQUATE_KEY_USAGE 인증서 오류를 참조하세요.

    Visual Studio가 IIS Express를 시작하고 앱을 실행합니다. 주소 표시줄에 localhost:port#이 표시되고 example.com 등은 표시되지 않습니다. localhost가 로컬 컴퓨터의 표준 호스트 이름이기 때문입니다. Localhost는 로컬 컴퓨터의 웹 요청만 지원합니다. Visual Studio가 웹 프로젝트를 만들면 임의의 포트가 웹 서버에 사용됩니다.

프로젝트 파일 검토

이후 자습서에서 작업할 주요 프로젝트 폴더 및 파일에 대한 개요는 다음과 같습니다.

페이지 폴더

Razor Pages 및 지원 파일이 들어 있습니다. 각 Razor 페이지는 파일 쌍입니다.

  • Razor 구문을 사용하는 C# 코드가 있는 HTML 태그를 포함하는 .cshtml파일입니다.
  • .cshtml.cs 페이지 이벤트를 처리하는 C# 코드가 있는 파일입니다.

지원 파일에는 밑줄로 시작하는 이름이 있습니다. 예를 들어 파일은 _Layout.cshtml 모든 페이지에 공통적인 UI 요소를 구성합니다. 이 파일은 페이지 맨 위에 있는 탐색 메뉴를 설정하고 페이지 맨 아래에 저작권 표시를 설정합니다. 자세한 내용은 ASP.NET Core의 레이아웃을 참조하세요.

wwwroot 폴더

HTML 파일, JavaScript 파일, CSS 파일과 같은 정적 자산을 포함합니다. 자세한 내용은 ASP.NET Core의 정적 파일을 참조하세요.

appsettings.json

연결 문자열과 같은 구성 데이터를 포함합니다. 자세한 내용은 ASP.NET Core의 구성을 참조하세요.

Program.cs

앱의 진입점을 포함합니다. 자세한 내용은 ASP.NET Core의 .NET 제네릭 호스트를 참조하세요.

Startup.cs

앱 동작을 구성하는 코드를 포함합니다. 자세한 내용은 ASP.NET Core에서 앱 시작을 참조하세요.

완료된 샘플 문제 해결

해결할 수 없는 문제가 발생한 경우 완료된 프로젝트와 코드를 비교합니다. 완료된 프로젝트를 보거나 다운로드합니다(다운로드 방법).

다음 단계

ASP.NET Core Razor Pages 웹앱을 빌드하는 작업의 기본 사항을 설명하는 자습서 시리즈 중 첫 번째입니다.

컨트롤러 및 보기에 익숙한 개발자를 대상으로 한 고급 소개는 Razor Pages 소개를 참조하세요.

시리즈가 끝나면 영화의 데이터베이스를 관리하는 앱이 생성됩니다.

예제 코드 살펴보기 및 다운로드 (다운로드 방법). 다운로드 예제는 영역을 테스트하기 위한 기초적인 앱을 제공합니다.

이 자습서에서는 다음을 수행합니다.

  • Razor Pages 웹앱을 만듭니다.
  • 앱을 실행합니다.
  • 프로젝트 파일을 검사합니다.

이 자습서의 내용을 마치면 이후의 자습서에서 빌드할 Razor Pages 웹앱을 사용할 수 있습니다.

Home 또는 인덱스 페이지

필수 조건

Razor Pages 웹앱 만들기

  • Visual Studio 파일 메뉴에서 새로 만들기>프로젝트를 선택합니다.

  • 새 ASP.NET Core 웹 애플리케이션을 만들고 다음을 선택합니다. 시작 창에서 새 프로젝트를 만듭니다.

  • 프로젝트 이름을 RazorPagesMovie로 지정합니다. 코드를 복사하여 붙여 넣을 때 네임스페이스가 일치하도록 프로젝트 이름을 RazorPagesMovie로 지정해야 합니다. 프로젝트 이름을 지정합니다.

  • 드롭다운에서 ASP.NET Core 3.1을 선택하고 웹 애플리케이션을 선택한 다음, 만들기를 선택합니다.

ASP.NET Core 웹 애플리케이션 선택

다음 시작 프로젝트를 만듭니다.

솔루션 탐색기

앱 실행

  • Ctrl+F5를 눌러 디버거 없이 실행합니다.

    프로젝트가 SSL을 사용하도록 아직 구성되지 않은 경우 Visual Studio에 다음 대화 상자가 표시됩니다.

    이 프로젝트는 SSL을 사용하도록 구성되었습니다. 브라우저에서 SSL 경고를 피하려면 IIS Express에서 생성한 자체 서명된 인증서를 신뢰하도록 선택할 수 있습니다. IIS Express SSL 인증서를 신뢰하시겠습니까?

    IIS Express SSL 인증서를 신뢰하는 경우 를 선택합니다.

    다음 대화 상자가 표시됩니다.

    보안 경고 대화 상자

    개발 인증서를 신뢰하는 데 동의하는 경우 를 선택합니다.

    Firefox 브라우저를 신뢰하는 방법에 대한 자세한 내용은 Firefox SEC_ERROR_INADEQUATE_KEY_USAGE 인증서 오류를 참조하세요.

    Visual Studio가 IIS Express를 시작하고 앱을 실행합니다. 주소 표시줄에 localhost:port#이 표시되고 example.com 등은 표시되지 않습니다. localhost가 로컬 컴퓨터의 표준 호스트 이름이기 때문입니다. Localhost는 로컬 컴퓨터의 웹 요청만 지원합니다. Visual Studio가 웹 프로젝트를 만들면 임의의 포트가 웹 서버에 사용됩니다.

프로젝트 파일 검토

이후 자습서에서 작업할 주요 프로젝트 폴더 및 파일에 대한 개요는 다음과 같습니다.

페이지 폴더

Razor Pages 및 지원 파일이 들어 있습니다. 각 Razor 페이지는 파일 쌍입니다.

  • Razor 구문을 사용하는 C# 코드가 있는 HTML 태그를 포함하는 .cshtml파일입니다.
  • .cshtml.cs 페이지 이벤트를 처리하는 C# 코드가 있는 파일입니다.

지원 파일에는 밑줄로 시작하는 이름이 있습니다. 예를 들어 파일은 _Layout.cshtml 모든 페이지에 공통적인 UI 요소를 구성합니다. 이 파일은 페이지 맨 위에 있는 탐색 메뉴를 설정하고 페이지 맨 아래에 저작권 표시를 설정합니다. 자세한 내용은 ASP.NET Core의 레이아웃을 참조하세요.

wwwroot 폴더

HTML 파일, JavaScript 파일, CSS 파일과 같은 정적 파일을 포함합니다. 자세한 내용은 ASP.NET Core의 정적 파일을 참조하세요.

appSettings.json

연결 문자열과 같은 구성 데이터를 포함합니다. 자세한 내용은 ASP.NET Core의 구성을 참조하세요.

Program.cs

프로그램의 진입점을 포함합니다. 자세한 내용은 ASP.NET Core의 .NET 제네릭 호스트를 참조하세요.

Startup.cs

앱 동작을 구성하는 코드를 포함합니다. 자세한 내용은 ASP.NET Core에서 앱 시작을 참조하세요.

다음 단계