ASP.NET Web Forms는 vNext 이니셔티브의 일부는 아니지만 무시되지는 않았습니다. Visual Studio 2013 업데이트 2의 일부로 새로운 도구, EF 통합 및 Roslyn에 대한 지원을 재개합니다.
Web Forms가 ASP.NET vNext의 일부가 아닌 이유
먼저 나쁜 소식을 설명하겠습니다. 성능과 플랫폼 간 이식성을 개선하기 위해 ASP.NET vNext는 System.Web에 대한 종속성을 제거합니다. OWIN에 비해 느리고 부피가 커서 테스트가 필요 이상으로 번거롭습니다.
분리하려고 여러 번 시도했지만 Web Forms는 System.Web의 나머지 부분과 너무 밀접하게 연결되어 있습니다. 그것은 문제의 시작에 불과합니다. System.Web과 System.Design에는 순환 종속성이 있습니다. 이러한 상황은 발생하지 않아야 합니다. 상황을 더욱 복잡하게 만들기 위해 System.Design에는 System.Windows.Forms도 포함됩니다.
전체적으로 보면 Web Forms 코드는 마치 스파게티 덩어리와 같습니다. 하지만 계속 사용될 것이므로 Microsoft는 당분간 이를 계속 지원할 것입니다.
Roslyn 지원
Web Forms에는 항상 배포 전략의 일부로 런타임 컴파일이 포함되어 있습니다. 이는 변경되지 않았지만 대체 구현으로 개발자는 Roslyn 기반 CodeDOM 공급자로 전환할 수 있습니다. (CodeDOM은 현재 Web Forms에서 사용되는 컴파일러 프레임워크입니다.) Pranav Rastogi는 다음과 같이 썼습니다.
우리는 적당한 크기와 복잡성(bin 디렉터리의 600개 이상의 어셈블리, 500개 이상의 사용자 컨트롤 및 페이지)의 애플리케이션을 테스트했습니다. 아래에 자세히 설명될 새로운 CodeDOM 공급자를 사용하면 시작/사전 컴파일 단계의 런타임 컴파일 비용이 약 15분에서 약 70초로 줄었습니다.
ASP.NET Identity 2.0 지원
ASP.NET Identity는 ASP.NET 애플리케이션 구축을 위한 최신의 새로운 회원 관리 시스템입니다. ID를 사용하면 사용자 프로필, Facebook, Twitter, Microsoft 계정, Google 등의 소셜 로그인을 더 쉽게 추가하고 지속성 계층을 SqlServer에서 Azure Table Storage로 전환할 수 있습니다. 또한 계정 확인, 이중 인증, 계정 잠금, 모든 위치에서의 Single Sign-On, 비밀번호 재설정 및 기타 여러 보안 관련 기능과 같은 기능을 추가합니다.
이번 업데이트에서는 ASP.NET Identity 2.0의 기능을 포함하도록 Web Forms 템플릿이 수정되었습니다.
Entity Framework 6 지원
EF6을 지원하기 위해 다음 구성 요소가 업데이트되었습니다.
EntityDataSource 컨트롤
DynamicData 공급자
일반 공급자
웹 양식 스캐폴딩
스캐폴딩은 Visual Studio 2013에서 다시 작성된 ASP.NET MVC 모델의 기본 CRUD 작업을 위한 코드 생성기입니다. 재작성 결과, Microsoft는 이제 Web Forms에 대한 스캐폴딩 지원을 제공할 수 있습니다. 특히 개발자는 모델 객체에서 생성된 뷰를 생성, 교체, 업데이트 및 삭제할 수 있습니다.
독자는 .NET 웹 개발 및 도구 블로그에서 전체 Web Forms 공지를 읽을 수 있습니다.