카테고리

분류 전체보기 (510)
문학 (128)
찬양 콘티(Continuity) (80)
Business as heritage (6)
IT . Web (149)
Photo (127)
etc. (20)
Total348,447
Today36
Yesterday147
*20121219 국치가 회복될 사건이 올 때까지 블로그 양쪽은 조의를 표하는 검정색입니다.
Tistory 로고 이미지 티스토리 가입하기!









블로그 이미지

HOONS 커뮤니티 강좌에 동시 게재된 글입니다.


ASP.NET MVC 4도 벌써 1년여 남짓 지나도록 .NET 기반 웹 개발자 분들로부터 많은 사랑을 받았습니다만, VS 2013 정식 출시와 더불어 MVC 5가 이미 여러분께 얼굴을 내밀 채비를 하고 있습니다.

ASP.NET MVC 5, 무엇이 어떻게 달라졌는지 함께 살펴볼까요?
(ASP.NET MVC의 기초가 궁금하신 분들은 앞선 글들을 참고해 주세요.)
 

Q. 사용자 인증에 OWIN(Open Web Interface / owin.org) 도입


MVC 4까지 기본으로 제공되는 인증 표준은 Microsoft.Web.WebPages.OAuth 네임스페이스에 포함된 WebSecurity(영문&숫자 계정) 및 OAuthWebSecurity(페이스북 계정 등) 클래스를 활용하는 방식이었습니다.

MVC 5부터 OWIN이 도입되면서, Microsoft.AspNet.Identity.Owin 네임스페이스에 포함된 AuthenticationIdentityManager를 활용하는 방향으로 개선되었습니다.
(다만 현재 접속 중인 사용자의 인증 상태 확인은 동일하게 System.Security.Principal.IPrincipal.Identity를 구현하여, 예전과 똑같이 User.Identity로 처리 가능)

이로써 곧잘 예외를 선사하곤 하던 [InitializeSimpleMembership] 어트리뷰트를 더 이상 달지 않아도 되고, 필요에 따라 new AuthenticationIdentityManager(new IdentityStore())와 같이 매니저를 생성해서 사용하면 인증 처리를 구현할 수 있습니다.
예) IdentityManager.Users.CreateLocalUserAsync(user, model.Password) / IdentityManager.Authentication.SignInAsync(AuthenticationManager, user.Id, isPersistent: false)

그리고 소셜 서비스의 인증 정보를 등록하는 파일도 AuthConfig.cs에서 Startup.Auth.cs로 변경되었으며, 무엇보다 인증 클래스가 자동으로 생성하는 사용자 정보 테이블의 구조가 새로워졌습니다.


MVC 4 MVC 5
UserProfile AspNetUsers
webpages_Membership
webpages_OAuthMembership
AspNetUserSecrets
AspNetUserClaims / 소셜 로그인 관리
AspNetTokens / 토큰 유효기간 관리
AspNetUserManagement / 계정 비활성 관리
AspNetUserLogins
webpages_Roles AspNetRoles
webpages_UsersInRoles AspNetUserRoles


 

W. 부트스트랩 기본 탑재


프로젝트 생성 시, 기본적으로 부트스트랩 2.3 파일들(bootstrap.css, bootstrap-responsive.css, bootstrap.js)이 함께 추가됩니다.
HTML 5 기반으로 동작하는 부트스트랩은 화면 크기에 따라 동적으로 div와 같은 HTML 엘리먼트들의 넓이와 높이를 조절해 줄 뿐 아니라, jQuery UI에 버금가는 수준의 개별 UI 컨트롤을 제공합니다. 특히 전문적인 UX 디자이너가 함께하는 상황이 아니라면, 부트스트랩은 개발자들의 UI 관리에 매우 큰 편리를 더해 줄 것입니다.

 

E. 더욱 강력해지고 유연해진 Entity Framework 6 기본 탑재


비동기 쿼리 및 저장, Enumerable.Contains 메서드의 성능 향상 등 다양한 부분들이 더 나아졌답니다. 자세한 내용은 다음 기회에. :-)

 

R. 새롭게 보완된 스캐폴딩 기능


솔루션 탐색기에서 항목 메뉴의 Add 밑에 Scattfold...가 추가되었습니다. 이전 버전에서 새 컨트롤러를 작성할 때 활용 가능했던 수준보다 더 구체화되고 다양해졌습니다.

 

T. 새 프로젝트 생성 템플릿 통합 및 새 템플릿 추가


이번 VS 2013에 적용된 One ASP.NET 개념에 맞게, 한 프로젝트 안에서 Web Forms, MVC, Web API 세 가지 핵심 요소를 모두 포함할 수 있게 재설계되었습니다.
또한 Single Page Application(HTML 5 + JavaScript + KnockoutJS), Facebook(페이스북 페이지 內 인-앱 개발용) 템플릿이 추가되어서 선택의 폭이 다양해졌습니다.

 

Y. 정리


오늘은 VS 2013에서 ASP.NET MVC 5 프로젝트를 새로 생성했을 때의 구조상 달라진 면모들을 중점적으로 살펴봤습니다. 다음 강좌부터는 MVC가 포함하는 각각의 구성 요소 별로 구체적인 개선사항들을 담아 보도록 하겠습니다.

저작자 표시
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by One of Remnants

댓글을 달아 주세요

달력

« » 2017.08
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    

최근에 받은 트랙백

글 보관함

티스토리 툴바