Visual Studio 2013에서 ASP.NET 웹 프로젝트 만들기

작성자: Tom Dykstra

이 항목에서는 업데이트 3을 사용하여 Visual Studio 2013 ASP.NET 웹 프로젝트를 만드는 옵션에 대해 설명합니다.

다음은 이전 버전의 Visual Studio와 비교하여 웹 개발을 위한 몇 가지 새로운 기능입니다.

Azure Cloud Services 또는 Azure Mobile Services용 웹 프로젝트를 만드는 방법에 대한 자세한 내용은 Azure Cloud Services 시작 및 ASP.NETAzure Mobile Services .NET 백 엔드를 사용하여 순위표 앱 만들기를 참조하세요.

사전 요구 사항

이 문서는 업데이트 3이 설치된 Visual Studio 2013 적용됩니다.

웹 애플리케이션 프로젝트와 웹 사이트 프로젝트 비교

ASP.NET 웹 애플리케이션 프로젝트와 웹 사이트 프로젝트의 두 종류 중에서 선택할 수 있습니다. 새 개발을 위한 웹 애플리케이션 프로젝트를 권장하며 이 문서는 웹 애플리케이션 프로젝트에만 적용됩니다. 자세한 내용은 MSDN 사이트의 Visual Studio에서 웹 애플리케이션 프로젝트와 웹 사이트 프로젝트를 참조하세요.

웹 애플리케이션 프로젝트 만들기 개요

다음 단계에서는 웹 프로젝트를 만드는 방법을 보여줍니다.

  1. 시작 페이지 또는 파일 메뉴에서 새 프로젝트를 클릭합니다.

  2. 새 프로젝트 대화 상자의 왼쪽 창에서 을 클릭하고 가운데 창에서 웹 애플리케이션을 ASP.NET.

    ASP.NET 웹 애플리케이션이 선택된 새 프로젝트 창을 보여 주는 스크린샷

    왼쪽 창에서 클라우드 를 선택하여 Azure Cloud Service, Azure Mobile Service 또는 Azure WebJob을 만들 수 있습니다. 이 항목에서는 해당 템플릿을 다루지 않습니다.

  3. 오른쪽 창에서 애플리케이션에 대한 상태 및 사용량 모니터링을 원하는 경우 Project 검사 Application Insights 추가 상자를 클릭합니다. 자세한 내용은 웹 애플리케이션의 성능 모니터링을 참조하세요.

  4. 프로젝트 이름, 위치 및 기타 옵션을 지정하고 확인을 클릭합니다.

    새 ASP.NET 프로젝트 대화 상자가 표시됩니다.

    새 ASP.NET 프로젝트 창을 보여 주는 스크린샷

  5. 템플릿을 클릭합니다.

    Web Forms 템플릿이 선택된 템플릿 선택 창을 보여 주는 스크린샷

  6. 템플릿에 포함되지 않은 추가 프레임워크에 대한 지원을 추가하려면 적절한 검사 상자를 클릭합니다. (예제에서 MVC 및/또는 Web API를 Web Forms 프로젝트에 추가할 수 있습니다.)

    Web Forms 확인란이 선택된 새 ASP.NET 프로젝트 창을 보여 주는 스크린샷

  7. 단위 테스트 프로젝트를 추가하려면 단위 테스트 추가를 클릭합니다.

    단위 테스트 추가

  8. 템플릿이 기본적으로 제공하는 것과 다른 인증 방법을 원하는 경우 인증 변경을 클릭합니다.

    인증 구성 단추

    인증 변경 창을 보여 주는 스크린샷

Azure에서 웹앱 또는 가상 머신 만들기

Visual Studio에는 웹 애플리케이션을 호스팅하기 위해 Azure 서비스를 쉽게 사용할 수 있는 기능이 포함되어 있습니다. 예를 들어 Visual Studio IDE에서 다음을 모두 수행할 수 있습니다.

  • 인터넷을 통해 애플리케이션을 사용할 수 있도록 하는 웹앱 또는 가상 머신을 만들고 관리합니다.
  • 애플리케이션이 클라우드에서 실행되는 로그를 봅니다.
  • 애플리케이션이 클라우드에서 실행되는 동안 원격으로 디버그 모드로 실행합니다.
  • SQL 데이터베이스와 같은 다른 Azure 서비스를 보고 관리합니다.

웹앱과 같은 기본 서비스를 무료로 포함하는 Azure 계정을 만들 수 있으며, MSDN 구독자인 경우 추가 Azure 서비스에 대한 월별 크레딧을 제공하는 혜택을 활성화 할 수 있습니다.

기본적으로 새 ASP.NET 프로젝트 대화 상자를 사용하면 새 웹 프로젝트에 대한 웹앱 또는 가상 머신을 만들 수 있습니다. 새 웹앱 또는 가상 머신을 만들지 않으려면 클라우드 검사 상자의 호스트를 선택 취소합니다.

원격 리소스 만들기

검사 상자 캡션 클라우드의 호스트 또는 원격 리소스 만들기일 수 있으며 두 경우 모두 효과가 동일합니다. 검사 상자를 선택한 상태로 두면 Visual Studio는 기본적으로 Azure App Service 웹앱을 만듭니다. 원하는 경우 드롭다운 상자를 사용하여 가상 머신 으로 변경할 수 있습니다. Azure에 아직 로그인하지 않은 경우 Azure 자격 증명을 묻는 메시지가 표시됩니다. 로그인한 후 대화 상자를 사용하여 Visual Studio에서 프로젝트에 대해 만들 리소스를 구성할 수 있습니다. 다음 그림에서는 웹앱에 대한 대화 상자를 보여 줍니다. 가상 머신을 만들도록 선택하면 다른 옵션이 나타납니다.

Azure 앱 설정 구성

이 프로세스를 사용하여 Azure 리소스를 만드는 방법에 대한 자세한 내용은 Azure 시작 및 ASP.NET 참조하세요.

이 문서의 나머지 부분에서는 사용 가능한 템플릿 및 해당 옵션에 대한 자세한 정보를 제공합니다. 이 문서에서는 템플릿에 사용되는 레이아웃 및 테마 프레임워크인 부트스트랩도 소개합니다.

Visual Studio 2013 웹 프로젝트 템플릿

Visual Studio는 템플릿을 사용하여 웹 프로젝트를 만듭니다. 프로젝트 템플릿은 새 프로젝트에서 파일 및 폴더를 만들고, NuGet 패키지를 설치하고, 기본적인 작업 애플리케이션에 대한 샘플 코드를 제공할 수 있습니다. 템플릿은 최신 웹 표준을 구현하며, ASP.NET 기술을 사용하는 방법에 대한 모범 사례를 보여 줄 뿐만 아니라 사용자 고유의 애플리케이션 만들기를 시작하기 위한 것입니다.

Visual Studio 2013 .NET 프레임워크의 .NET 4.5 이상 버전을 대상으로 하는 프로젝트의 웹 프로젝트 템플릿에 대해 다음과 같은 선택 항목을 제공합니다.

Facebook 템플릿을 제공하는 Visual Studio 확장을 설치할 수도 있습니다.

.NET 4를 대상으로 하는 프로젝트를 만드는 방법에 대한 자세한 내용은 이 항목의 뒷부분에 있는 Visual Studio 2012 템플릿 을 참조하세요.

모바일 클라이언트용 ASP.NET 애플리케이션을 만드는 방법에 대한 자세한 내용은 ASP.NET 모바일 지원을 참조하세요.

빈 템플릿

빈 템플릿은 프로젝트 파일(.csproj 또는 과 같은 ASP.NET 웹앱에 대한 최소 폴더 및 파일을 제공합니다.vbproj) 및 Web.config 파일입니다. 폴더 추가 및 레이블에 대한 핵심 참조 아래의 검사 상자를 사용하여 Web Forms, MVC 및/또는 Web API에 대한 지원을 추가할 수 있습니다.

빈 템플릿의 경우 인증 옵션을 사용할 수 없습니다. 인증 기능은 샘플 애플리케이션에서 구현되며 빈 템플릿은 샘플 애플리케이션을 만들지 않습니다.

Web Forms 템플릿

Web Forms 프레임워크는 UI 및 데이터 액세스 기능이 풍부한 웹 사이트를 신속하게 빌드할 수 있는 다음과 같은 기능을 제공합니다.

  • Visual Studio의 WYSIWYG 디자이너입니다.
  • HTML을 렌더링하고 속성 및 스타일을 설정하여 사용자 지정할 수 있는 서버 컨트롤입니다.
  • 데이터 액세스 및 데이터 표시를 위한 다양한 컨트롤입니다.
  • WPF와 같은 클라이언트 애플리케이션을 프로그래밍하는 것처럼 프로그래밍할 수 있는 이벤트를 노출하는 이벤트 모델입니다.
  • HTTP 요청 간에 상태(데이터)를 자동으로 보존합니다.

일반적으로 Web Forms 애플리케이션을 만들려면 ASP.NET MVC 프레임워크를 사용하여 동일한 애플리케이션을 만드는 것보다 프로그래밍 작업이 덜 필요합니다. 그러나 Web Forms 신속한 애플리케이션 개발을 위한 것이 아닙니다. Web Forms 기반으로 구축된 복잡한 상용 애플리케이션 및 프레임워크가 많이 있습니다.

Web Forms 페이지와 페이지의 컨트롤은 브라우저로 전송되는 대부분의 태그를 자동으로 생성하므로 MVC에서 제공하는 HTML을 ASP.NET 세분화된 컨트롤이 없습니다. 페이지 및 컨트롤을 구성하기 위한 선언적 모델은 작성해야 하는 코드의 양을 최소화하지만 HTML 및 HTTP의 동작 중 일부를 숨깁니다. 예를 들어 컨트롤에서 생성할 수 있는 태그를 정확하게 지정할 수 있는 것은 아닙니다.

Web Forms 프레임워크는 테스트 기반 개발, 문제 분리, 제어 반전종속성 주입과 같은 패턴 기반 개발 사례에 ASP.NET MVC만큼 쉽게 적합하지 않습니다. 이러한 방식으로 코드를 작성하려는 경우 다음을 수행할 수 있습니다. ASP.NET MVC 프레임워크에서처럼 자동이 아닙니다. Microsoft SharePoint는 Web Forms MVP를 기반으로 합니다.

Web Forms 템플릿은 부트스트랩을 사용하여 반응형 디자인 및 테마 기능을 제공하는 샘플 Web Forms 애플리케이션을 만듭니다. 다음 그림에서는 홈페이지를 보여 줍니다.

Web Forms 템플릿 앱 홈페이지를 보여 주는 스크린샷

Web Forms 대한 자세한 내용은 ASP.NET Web Forms 참조하세요. Web Forms 템플릿이 수행하는 작업에 대한 자세한 내용은 Visual Studio 2013 사용하여 기본 Web Forms 애플리케이션 빌드를 참조하세요.

MVC 템플릿

ASP.NET MVC는 테스트 기반 개발, 문제 분리, 제어 반전종속성 주입과 같은 패턴 기반 개발 사례를 용이하게 하기 위해 설계되었습니다. 프레임워크는 웹 애플리케이션의 비즈니스 논리 계층을 프레젠테이션 계층에서 분리하는 것이 좋습니다. 애플리케이션을 모델(M), 뷰(V) 및 컨트롤러(C)로 나누어 MVC를 ASP.NET 더 큰 애플리케이션에서 복잡성을 보다 쉽게 관리할 수 있습니다.

ASP.NET MVC를 사용하면 Web Forms 보다 HTML 및 HTTP에서 더 직접적으로 작업할 수 있습니다. 예를 들어 Web Forms HTTP 요청 간의 상태를 자동으로 보존할 수 있지만 MVC에서 명시적으로 코딩해야 합니다. MVC 모델의 장점은 애플리케이션이 수행하는 작업과 웹 환경에서의 동작 방식을 정확하게 제어할 수 있다는 것입니다. 단점은 더 많은 코드를 작성해야 한다는 것입니다.

MVC는 확장 가능하도록 설계되어 전력 개발자에게 애플리케이션 요구 사항에 맞게 프레임워크를 사용자 지정할 수 있는 기능을 제공합니다. 또한 ASP.NET MVC 소스 코드는 OSI 라이선스에서 사용할 수 있습니다.

MVC 템플릿은 부트스트랩 을 사용하여 반응형 디자인 및 테마 기능을 제공하는 샘플 MVC 5 애플리케이션을 만듭니다. 다음 그림에서는 홈페이지를 보여 줍니다.

MVC 샘플 애플리케이션

MVC에 대한 자세한 내용은 MVC ASP.NET 참조하세요. MVC 4 템플릿을 선택하는 방법에 대한 자세한 내용은 이 문서의 뒷부분에 있는 Visual Studio 2012 템플릿을 참조하세요 .

Web API 템플릿

Web API 템플릿은 MVC 기반 API 도움말 페이지를 포함하여 Web API를 기반으로 하는 샘플 웹 서비스를 만듭니다.

ASP.NET Web API는 브라우저 및 모바일 디바이스를 비롯한 광범위한 클라이언트에 연결하는 HTTP 서비스를 쉽게 빌드할 수 있게 해 주는 프레임워크입니다. ASP.NET Web API .NET Framework RESTful 서비스를 구축하기에 이상적인 플랫폼입니다.

Web API 템플릿은 샘플 웹 서비스를 만듭니다. 다음 그림에서는 샘플 도움말 페이지를 보여 줍니다.

Web API 도움말 페이지

GET API에 대한 Web API 도움말 페이지

Web API에 대한 자세한 내용은 ASP.NET Web API 참조하세요.

단일 페이지 응용 프로그램 템플릿

SPA(단일 페이지 애플리케이션) 템플릿은 클라이언트에서 JavaScript, HTML 5 및 KnockoutJS를 사용하고 서버에서 ASP.NET Web API 샘플 애플리케이션을 만듭니다.

SPA 템플릿에 대한 유일한 인증 옵션은 개별 사용자 계정입니다.

다음 그림에서는 SPA 템플릿이 빌드하는 샘플 애플리케이션의 초기 상태를 보여 줍니다.

SPA 샘플 애플리케이션

SPA 템플릿을 사용하여 애플리케이션을 만드는 방법에 대한 자세한 내용은 Web API - 외부 인증 서비스를 참조하세요.

단일 페이지 애플리케이션 ASP.NET 및 KnockoutJS 이외의 JavaScript 프레임워크를 사용하는 추가 SPA 템플릿에 대한 자세한 내용은 다음 리소스를 참조하세요.

Facebook 템플릿

Facebook 템플릿을 제공하는 Visual Studio 확장을 설치할 수 있습니다. 이 템플릿은 Facebook 웹 사이트 내에서 실행되도록 설계된 샘플 애플리케이션을 만듭니다. ASP.NET MVC를 기반으로 하며 실시간 업데이트 기능에 Web API를 사용합니다.

Facebook 애플리케이션이 Facebook 사이트 내에서 실행되고 Facebook 인증에 의존하기 때문에 Facebook 템플릿에는 인증 옵션을 사용할 수 없습니다.

ASP.NET Facebook 애플리케이션에 대한 자세한 내용은 MVC Facebook API 업데이트를 참조하세요.

Visual Studio 2012 템플릿

Visual Studio 2013 웹 프로젝트 만들기 대화 상자는 Visual Studio 2012에서 사용 가능한 일부 템플릿에 대한 액세스를 제공하지 않습니다. 이러한 템플릿 중 하나를 사용하려는 경우 Visual Studio 새 프로젝트 대화 상자의 왼쪽 창에서 Visual Studio 2012 노드를 클릭할 수 있습니다.

Visual Studio 2012 템플릿

Visual Studio 2012 노드를 사용하면 Visual Studio 2013 기본 템플릿 목록에서 액세스할 수 없는 다음 웹 템플릿을 선택할 수 있습니다.

  • ASP.NET MVC 4 웹 애플리케이션
  • ASP.NET 동적 데이터 엔터티 웹 애플리케이션
  • AJAX 서버 컨트롤 ASP.NET
  • ASP.NET AJAX Server Control Extender
  • ASP.NET 서버 컨트롤

Visual Studio 2013 웹 프로젝트 템플릿의 부트스트랩

Visual Studio 2013 프로젝트 템플릿은 Twitter에서 만든 레이아웃 및 테마 프레임워크인 부트스트랩을 사용합니다. 부트스트랩은 CSS3을 사용하여 반응형 디자인을 제공합니다. 즉, 레이아웃이 다양한 브라우저 창 크기에 동적으로 적응할 수 있습니다. 예를 들어 와이드 브라우저 창에서 Web Forms 템플릿에서 만든 홈페이지는 다음 그림과 같습니다.

와이드 브라우저 창의 Web Forms 템플릿 앱 홈페이지를 보여 주는 스크린샷

창을 더 좁게 만들고 가로로 정렬된 열을 세로 정렬로 이동합니다.

부트스트랩 세로 열 정렬

창을 좀 더 좁히면 가로 위쪽 메뉴가 클릭할 수 있는 아이콘으로 바뀌어 세로 방향 메뉴로 확장할 수 있습니다.

부트스트랩 메뉴 아이콘

부트스트랩 세로 메뉴

부트스트랩의 테마 기능을 사용하여 애플리케이션의 모양과 느낌에 변화를 쉽게 적용할 수도 있습니다. 예를 들어 다음 단계를 수행하여 테마를 변경할 수 있습니다.

  1. 브라우저에서 로 http://Bootswatch.com이동하여 테마를 선택한 다음 다운로드를 클릭합니다. (기본적으로 bootstrap.min.css 다운로드합니다. CSS 코드를 검사하려면 축소된 버전 대신 bootstrap.css 가져옵니다.
  2. 다운로드한 CSS 파일의 내용을 복사합니다.
  3. Visual Studio에서 콘텐츠 폴더에 bootstrap-theme.css 이라는 새 스타일시트 파일을 만들고 다운로드한 CSS 코드를 붙여넣습니다.
  4. App_Start/Bundle.config 열고 bootstrap.css bootstrap-theme.css 변경합니다.

프로젝트를 다시 실행하면 애플리케이션이 새 모양으로 표시됩니다. 다음 그림에서는 Amelia 테마의 효과를 보여 줍니다.

부트스트랩 아멜리아 테마

많은 부트스트랩 테마는 무료 및 프리미엄 버전 모두에서 사용할 수 있습니다. 부트스트랩은 드롭다운, 단추 그룹아이콘과 같은 다양한 UI 구성 요소도 제공합니다. 부트스트랩에 대한 자세한 내용은 부트스트랩 사이트를 참조하세요.

Visual Studio에서 Web Forms 디자이너를 사용하는 경우 디자이너는 CSS3을 지원하지 않으므로 부트스트랩 테마 또는 반응형 레이아웃 변경의 모든 효과를 정확하게 표시하지는 않습니다. 그러나 브라우저에서 볼 때 Web Forms 페이지가 올바르게 표시됩니다.

추가 프레임워크에 대한 지원 추가

템플릿을 선택하면 템플릿에서 사용하는 프레임워크의 검사 상자가 자동으로 선택됩니다. 예를 들어 Web Forms 템플릿을 선택하면 Web Forms 검사 상자가 선택되어 지울 수 없습니다.

템플릿 선택 창에서 Web Forms 템플릿을 선택하면 어떻게 되는지 보여 주는 스크린샷

Web Forms 확인란이 미리 선택된 새 ASP.NET 프로젝트 창을 보여 주는 스크린샷

프로젝트를 만들 때 해당 프레임워크에 대한 지원을 추가하기 위해 템플릿에 포함되지 않은 프레임워크의 검사 상자를 선택할 수 있습니다. 예를 들어 MVC 템플릿을 선택할 때 Web Forms .aspx 페이지를 사용하도록 설정하려면 Web Forms 검사 상자를 선택합니다. 또는 Web Forms 템플릿을 사용할 때 MVC를 사용하도록 설정하려면 MVC 검사 상자를 클릭합니다. 프레임워크를 추가하면 런타임 지원뿐만 아니라 디자인 타임도 사용할 수 있습니다. 예를 들어 Web Forms 프로젝트에 MVC 지원을 추가하는 경우 컨트롤러와 뷰를 스캐폴드할 수 있습니다.

프로젝트에서 Web Forms 및 MVC를 결합하고 Web Forms 친숙한 URL을 사용하도록 설정하는 경우 하나의 URL에 여러 개의 가능한 대상이 있는 예기치 않은 라우팅 문제가 있을 수 있습니다. 먼저 정의된 경로가 우선합니다. 예를 들어 컨트롤러와 Home.aspx 페이지 http://contoso.com/home 가 있는 경우 HomeRouteConfig.cs 메서드를 호출하기 전에 메서드를 호출 EnableFriendlyUrlsMapRoute 하면 URL이 Home.aspx 이동하거나 이전에 를 호출 MapRouteEnableFriendlyUrls하는 경우 동일한 URL이 컨트롤러의 Home 기본 보기로 이동합니다.

프레임워크를 추가해도 샘플 애플리케이션 기능이 추가되지 않습니다. 예를 들어 MVC 템플릿을 선택할 때 Web Forms 지원을 추가하는 경우 Default.aspx 홈페이지 파일이 만들어지지 않습니다. 프레임워크를 지원하는 데 필요한 폴더, 파일 및 참조만 추가됩니다. 이러한 이유로 프레임워크를 추가해도 템플릿에서 만든 샘플 애플리케이션의 코드에 의해 구현되는 인증 옵션이 변경되지 않습니다. 예를 들어 빈 템플릿을 선택하고 Web Forms 또는 MVC 지원을 추가하는 경우 인증 구성 단추는 계속 비활성화됩니다.

다음 섹션에서는 각 검사 상자의 효과를 간략하게 설명합니다.

Web Forms 지원 추가

App_DataModels 폴더와 Global.asax 파일을 만듭니다. 이러한 템플릿은 비어 있는 템플릿 이외의 모든 템플릿에서 이미 만들어지므로 Web Forms 검사 상자를 선택하면 다른 템플릿에 차이가 없습니다.

Web Forms 템플릿은 기본적으로 친숙한 URL을 사용하도록 설정하지만 Web Forms 검사 상자를 선택하여 다른 템플릿에 Web Forms 지원을 추가하는 경우 친숙한 URL은 자동으로 사용하도록 설정되지 않습니다.

MVC 지원 추가

MVC, Razor 및 WebPages NuGet 패키지를 설치하고, 빈 App_Data, 컨트롤러, 모델보기 폴더를 만들고, RouteConfig.cs 파일을 사용하여 App_Start 폴더를 만들고, Global.asax 파일을 만듭니다.

Web API 지원 추가

WebApi 및 Newtonsoft.Json NuGet 패키지를 설치하고, 빈 App_Data, 컨트롤러Models 폴더를 만들고, WebApiConfig.cs 파일을 사용하여 App_Start 폴더를 만들고, Global.asax 파일을 만듭니다.

인증 방법

Visual Studio 2013 Web Forms, MVC 및 Web API 템플릿에 대한 몇 가지 인증 옵션을 제공합니다.

개별 사용자 계정이 선택된 인증 변경 창을 보여 주는 스크린샷

인증 없음

인증 없음을 선택하면 샘플 애플리케이션에는 로그인할 웹 페이지가 없고, 로그인한 사용자를 나타내는 UI도 없고, 멤버 자격 데이터베이스에 대한 엔터티 클래스도 없고, 멤버 자격 데이터베이스에 대한 연결 문자열 없습니다.

개별 사용자 계정

개별 사용자 계정을 선택하는 경우 샘플 애플리케이션은 사용자 인증에 ASP.NET ID(이전의 ASP.NET 멤버 자격)를 사용하도록 구성됩니다. ASP.NET ID를 사용하면 사이트에서 사용자 이름 및 암호를 만들거나 Facebook, Google, Microsoft 계정 또는 Twitter와 같은 소셜 공급자와 로그인하여 계정을 등록할 수 있습니다. ASP.NET Identity의 사용자 프로필에 대한 기본 데이터 저장소는 프로덕션 사이트의 SQL Server 또는 Azure SQL Database에 배포할 수 있는 SQL Server LocalDB 데이터베이스입니다.

Visual Studio 2013 이러한 기능은 Visual Studio 2012와 동일하지만 ASP.NET 멤버 자격 시스템의 기본 코드를 다시 작성했습니다. 새 코드베이스의 장점은 다음과 같습니다.

  • 새 멤버 자격 시스템은 ASP.NET Forms 인증 모듈이 아닌 OWIN 을 기반으로 합니다. 즉, IIS에서 Web Forms 또는 MVC를 사용하든, Web API 또는 SignalR을 자체 호스팅하든 동일한 인증 메커니즘을 사용할 수 있습니다.
  • 새 멤버 자격 데이터베이스는 Entity Framework Code First에서 관리되며 모든 테이블은 수정할 수 있는 엔터티 클래스로 표시됩니다. 즉, 사용자 고유의 요구에 맞게 데이터베이스 스키마 및 프로필 관련 웹 UI를 쉽게 사용자 지정할 수 있으며 Code First 마이그레이션 사용하여 업데이트를 쉽게 배포할 수 있습니다.

새 멤버 자격 시스템은 새 템플릿에서 자동으로 구현되며 .NET 4.5 이상을 대상으로 하는 모든 프로젝트에서 수동으로 구현할 수 있습니다.

ASP.NET ID는 주로 외부 고객을 위한 인터넷 웹 사이트를 만드는 경우에 적합합니다. organization Active Directory 또는 Office 365 사용하고 직원 및 비즈니스 파트너에 대해 Single Sign-On을 사용하도록 설정하는 프로젝트를 만들려는 경우 조직 계정 옵션이 더 적합할 수 있습니다.

개별 사용자 계정 옵션에 대한 자세한 내용은 다음 리소스를 참조하세요.

조직 계정

조직 계정을 선택하는 경우 샘플 애플리케이션은 Azure Active Directory(Office 365 포함) 또는 Windows Server Active Directory Azure AD 사용자 계정을 기반으로 인증에 WIF(Windows Identity Foundation)를 사용하도록 구성됩니다. 자세한 내용은 이 항목의 뒷부분에 있는 조직 계정 인증 옵션을 참조하세요.

Windows 인증

Windows 인증을 선택하면 샘플 애플리케이션이 인증에 Windows 인증 IIS 모듈을 사용하도록 구성됩니다. 애플리케이션은 Windows에 로그인되었지만 사용자 등록 또는 로그인 UI를 포함하지 않는 Active Directory 또는 로컬 컴퓨터 계정의 도메인 및 사용자 ID를 표시합니다. 이 옵션은 인트라넷 웹 사이트를 위한 것입니다.

또는 조직 계정에서 온-프레미스 옵션을 선택하여 AD 인증을 사용하는 인트라넷 사이트를 만들 수 있습니다. 온-프레미스 옵션은 Windows 인증 모듈 대신 WIF(Windows Identity Foundation)를 사용합니다. 온-프레미스 옵션을 설정하려면 몇 가지 추가 단계가 필요하지만 WIF를 사용하면 Windows 인증 모듈에서 사용할 수 없는 기능을 사용할 수 있습니다. 예를 들어 WIF를 사용하면 Active Directory에서 애플리케이션 액세스를 구성하고 디렉터리 데이터를 쿼리할 수 있습니다.

조직 계정 인증 옵션

인증 구성 대화 상자는 Azure Active Directory(Azure AD, Office 365 포함) 또는 AD(Windows Server Active Directory) 계정 인증에 대한 몇 가지 옵션을 제공합니다.

Azure AD 옵션 중 하나를 시도하지만 아직 계정이 없는 경우 여기를 클릭하여 Azure AD 계정에 등록합니다.

참고

Azure AD 옵션 중 하나를 선택하는 경우 프로젝트에 데이터베이스가 필요하며 Azure AD 테넌트용 전역 관리자 계정에 로그인해야 합니다. Azure AD 테넌트용 관리 권한이 있는 조직 계정(예admin@contoso.onmicrosoft.com: )의 이름과 암호를 입력합니다.

로그인 대화 상자에 Microsoft 계정의 자격 증명(예: contoso@hotmail.com)을 입력하지 마세요.

클라우드 - 단일 조직 인증

단일 조직 인증

하나의 Azure AD 테넌트에서 정의된 사용자 계정에 대해 인증을 사용하도록 설정하려면 이 옵션을 선택합니다. 예를 들어 사이트가 contoso.com contoso.onmicrosoft.com 테넌트에 있는 Contoso 회사의 직원이 사이트를 사용할 수 있게 됩니다. 다른 테넌트의 사용자가 애플리케이션에 액세스할 수 있도록 Azure AD 구성할 수 없습니다.

도메인

애플리케이션을 설정할 Azure AD 도메인(예: contoso.onmicrosoft.com)을 입력합니다. 대신 contoso.onmicrosoft.com과 같은 contoso.com사용자 지정 도메인이 있는 경우 여기에 입력할 수 있습니다.

액세스 수준

애플리케이션이 Graph API 사용하여 디렉터리 정보를 쿼리하거나 업데이트해야 하는 경우 Single Sign-On, 디렉터리 데이터 읽기 또는 Single Sign-On, 읽기 및 쓰기 디렉터리 데이터를 선택합니다. 그렇지 않으면 Single Sign-On을 선택합니다. 자세한 내용은 애플리케이션 액세스 수준Graph API 사용하여 Azure AD 쿼리를 참조하세요.

애플리케이션 ID URI

기본적으로 템플릿은 프로젝트 이름을 Azure AD 도메인에 추가하여 애플리케이션 ID URI를 만듭니다. 예를 들어 프로젝트 이름이 Example 이고 도메인이 contoso.onmicrosoft.com이면 애플리케이션 ID URI가 가 됩니다 https://contoso.onmicrosoft.com/Example. 애플리케이션 ID URI를 수동으로 지정하려면 기타 옵션 섹션을 확장하고 텍스트 상자에 애플리케이션 ID URI를 입력합니다. 애플리케이션 ID URI는 로 시작해야 https://합니다.

기본적으로 Azure AD 이미 프로비전된 애플리케이션에 Visual Studio에서 프로젝트에 사용하는 것과 동일한 애플리케이션 ID URI가 있는 경우 프로젝트는 새 애플리케이션을 프로비전하는 대신 기존 애플리케이션에 연결됩니다. 이 경우 새 애플리케이션을 프로비전하려면 동일한 ID를 가진 애플리케이션 항목이 이미 있는 경우 애플리케이션 항목 덮어쓰기 상자의 검사 선택을 취소합니다.

덮어쓰기 검사 상자가 선택 취소되고 Visual Studio에서 동일한 애플리케이션 ID URI를 가진 기존 애플리케이션을 찾으면 사용할 URI에 숫자를 추가하여 새 URI를 만듭니다. 예를 들어 프로젝트 이름이 이고Example, 텍스트 상자를 비워 두고, 덮어쓰기 검사 상자를 선택 취소하고, Azure AD 테넌트에 이미 URIhttps://contoso.onmicrosoft.com/Example가 있는 애플리케이션이 있다고 가정합니다. 이 경우 와 같은 https://contoso.onmicrosoft.com/Example_20130619330903애플리케이션 ID URI를 사용하여 새 애플리케이션이 프로비전됩니다.

Azure AD 애플리케이션 프로비전

Azure AD 애플리케이션을 프로비전하거나 프로젝트를 기존 애플리케이션에 연결하려면 Visual Studio에서 도메인에 대한 전역 관리자의 자격 증명이 필요합니다. 인증 구성 대화 상자에서 확인을 클릭하면 지정한 도메인에 대한 전역 관리자의 사용자 이름과 암호를 묻는 메시지가 표시됩니다. 나중에 새 ASP.NET 프로젝트 대화 상자에서 프로젝트 만들기를 클릭하면 Visual Studio에서 Azure AD 애플리케이션을 프로비전합니다. 이 프로세스의 일부로 Visual Studio는 생성 후 1년 후에 만료되는 Web.config 파일에 클라이언트 비밀 값을 포함합니다.

클라우드 - 단일 조직 인증을 사용하는 애플리케이션을 만드는 방법에 대한 자세한 내용은 다음 리소스를 참조하세요.

자습서는 아직 Visual Studio 2013 대해 업데이트되지 않았습니다. 자습서에서 수동으로 수행하도록 지시하는 내용 중 일부는 Visual Studio 2013 자동화됩니다.

클라우드 - 다중 조직 인증

여러 organization 인증

여러 Azure AD 테넌트에서 정의된 사용자 계정에 대해 인증을 사용하도록 설정하려면 이 옵션을 선택합니다. 예를 들어 사이트가 contoso.com contoso.onmicrosoft.com 테넌트에 있는 Contoso 회사의 직원과 fabrikam.onmicrosoft.com 테넌트에 있는 Fabrikam 회사의 직원이 사용할 수 있습니다.

입력하는 설정 및 애플리케이션 프로비저닝 단계는 단일 organization 인증과 비슷합니다.

클라우드 - 다중 조직 인증을 사용하는 애플리케이션을 만드는 방법에 대한 자세한 내용은 다음 리소스를 참조하세요.

온-프레미스 조직 인증

온-프레미스 조직 인증

AD(Windows Server Active Directory)에 정의된 사용자 계정에 대해 인증을 사용하도록 설정하려는 경우 Azure AD 사용하지 않으려면 이 옵션을 선택합니다. 이 옵션을 사용하여 인트라넷 사이트 또는 인터넷 사이트를 만들 수 있습니다. 인터넷 사이트의 경우 ADFS(Active Directory Federation Services)를 사용하여 AD에 대한 액세스를 제공합니다. 자세한 내용은 Visual Studio 2013 ASP.NET ADFS(온-프레미스 조직 인증 옵션) 사용을 참조하세요.

인트라넷 사이트의 경우 대신 이 옵션 대신 Windows 인증 을 선택할 수 있습니다. Windows 인증 옵션의 경우 메타데이터 문서 URL을 제공할 필요가 없습니다. 그러나 Windows 인증은 Active Directory에서 애플리케이션 액세스를 제어하거나 디렉터리 데이터를 쿼리하는 기능을 제공하지 않습니다.

온-프레미스 기관

메타데이터 문서를 가리키는 URL을 입력합니다. 메타데이터 문서에는 권한의 좌표가 포함되어 있습니다. 애플리케이션은 이러한 좌표를 사용하여 웹 로그온 흐름을 구동합니다.

애플리케이션 ID URI

AD가 이 애플리케이션을 식별하는 데 사용할 수 있는 고유한 URI를 제공하거나 Visual Studio에서 애플리케이션을 만들 수 있도록 비워 둡니다.

다음 단계

이 문서에서는 Visual Studio 2013 새 ASP.NET 웹 프로젝트를 만들기 위한 몇 가지 기본적인 도움말을 제공했습니다. 웹 개발에 Visual Studio를 사용하는 방법에 대한 자세한 내용은 를 참조하세요 https://www.asp.net/visual-studio/.