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) 에 맞춰 기록해 주면 된다.
반응형