본문 바로가기

▣ ASP.NET ▣/◈ MVC ◈

mvc4 -> mvc5, razor 2.0 -> 3.0 전환시 오류 해결

1. nuget 으로 mvc 나 razor를 업그레이드 하고 나면 아래와 같은 에러가 뜬다... 
이는 참조 모듈은 변경되었으나 web.config 에 과거 버전이 기재되어 있기 때문이다.

1) razor 업그레이드 한 경우

2) mvc 를 업그래이드한 경우

Expression of type 'System.Web.Mvc.MvcWebRazorHostFactory' cannot be 
used 
for return type 'System.Web.WebPages.Razor.WebRazorHostFactory'

해결 방법 : Views 폴더 안에 있는 web.config 에 있는 버전을 일괄 변경한다.

위의 경우 2.0.0.0 으로 된 razor 버전을 일괄 3.0.0.0 으로 변경하였고, 
두번째 Mvc 관련 오류도 web.config 에 기재된 Mvc  버전을 4.0.0.0 에서 5.0.0.0 으로 일괄 변경하여 에러를 해결하였다.

 


그런데 다 고치고 나면 Visual Studio 가 이상한 짓을 하게 된다

멀쩡한 애들이 없다고 난리다.
이 문제는 프로젝트 루트에 있는 web.config 에서

webpages:Version 을 사용하고 있는 razor 버전 (여기서는 3.0.0.0) 에 맞춰 기록해 주면 된다.

 






출처 : http://mansookim.tistory.com/77