2014-05-21 3 views
3

MVC 4 또는 5로 업그레이드하기 위해 전체 스택을 갖춘 기존 MVC 3 상점에 동기를 부여해야하는 이점이 있습니까? 우리는 MVC 3을 꽤 오랫동안 사용 해왔고 "새로운 기능"이 정말로 필요하다고 느끼지 않습니다. 나는 이점의 유형을 찾고 있어요MVC 5의 장점은 무엇입니까

MVC 3는 정말 당신의 사용 목적에 따라 달라집니다 MVC 2 이상

답변

4

을 도입 할 때 면도기는 전망에 가져왔다. 그들은 어떤 사람들에게는 관심이 있을지 모르는 새로운 기능을 소개해 왔지만 다른 사람들에게는 그렇지 않을 수도 있습니다.

예를 들어 새 프로젝트를 시작하는 경우 부트 스트랩 기반 기본 템플릿의 이점을 누릴 수 있습니다. 나는 그들이 OAuth와 같은 것을 더 쉽게하는 새로운 인증 모델을 가지고 있다고 들었다.

JsonResults를 풍부한 UI에 제공하기 위해 컨트롤러를 편안한 API로 자주 사용하는 경우 WebApi가 좋을 것입니다.

대부분 I/O 작업 (다른 웹 서비스에 대한 요청 또는 데이터베이스 호출)에 대한 통과 요청을 많이 받기 때문에 시스템이 스레드 제한을 초과 할 가능성이있는 경우 컨트롤러 동작이 비동기로 동작하는 Task<>을 반환 할 수 있다는 것을 알 수 있습니다.

v3 이후 새로운 몇 가지 기능이 있으며 거의 ​​모든 항목이 같은 범주에 속합니다. 일부 사용자에게는 유용 할뿐 아니라 다른 사용자에게는 유용합니다.

.5로 업그레이드 할 때 얻을 수있는 마지막 이점 중 하나는 .6에 이 있어야하고, 피처가 있어야한다는 것입니다. 마지막 두 버전을 업그레이드 할 때 이미 문제가 발생했을 수 있습니다. 덜 고통스러운 다른 미래 버전으로 전환하십시오.

+1

릴리스 정보는 항상 업그레이드 여부를 결정하는 가장 좋은 장소입니다. MVC4의 경우 http://www.asp.net/whitepapers/mvc4-release-notes를 참조하십시오. MVC5의 경우 http://www.asp.net/mvc/mvc5를 참조하십시오. –

1

MVC 4에 있으며 WebAPI를 광범위하게 사용했습니다. attibute 라우팅을 위해 MVC 5로 이동하고 싶습니다. (현재 라우팅은 application_start에서 Global.asax에 의해 호출 된 별도의 configuartion 파일에서 구성됩니다.)

빌드 한 속성 라우팅을 살펴보십시오. WebAPI 2로 루트는 바로이 샘플 stolen directly from MSDN에서의 방법과 함께 선언하는 방법을 참조하십시오 :

public class MoviesController : ApiController 
{ 
    [Route("movies")] 
    public IEnumerable<Movie> Get() { } 

    [Route("actors/{actorId}/movies")] 
    public IEnumerable<Movie> GetByActor(int actorId) { } 

    [Route("directors/{directorId}/movies")] 
    public IEnumerable<Movie> GetByDirector(int directorId) { } 
}