본문 바로가기
asp.net

[.net] MvcBuildViews 설정, Web.config 충돌

by TTTGGG 2024. 11. 20.
728x90
반응형
SMALL

MvcBuildViews는 ASP.NET MVC 프로젝트의 빌드 설정으로, 기본 값은 false로 설정됨

MvcBuildViews가 true로 설정되면, 빌드 과정에서 모든 Razor 뷰 파일(cshtml)이 미리 컴파일 되어 뷰 파일에 구문 오류나 참조 오류가 있는지 확인함

MvcBuildViews가 false일 경우, 뷰 파일은 빌드 과정에서 컴파일 되지 않고 런타임 시에만 컴파일 되어 뷰 파일에 오류가 있어도 빌드에 영향을 주지 않고 뷰를 실제 실행할 때만 오류가 발생함 

 

Web.config에 sessionState를 설정 했었는데, 처음 게시 이후 빌드부터 사진과 같은 에러가 발생했었음

프로젝트의 obj 폴더를 지우고 다시 빌드하면 정상적으로 빌드되었지만 이후에 또 같은 에러가 발생했음

MvcBuildViews가 true로 설정되어 있을 때, 빌드 과정에서 모든 뷰 파일이 컴파일 되므로 obj 폴더에 뷰 컴파일 관련 파일이 생성됨 

이 과정에서 뷰 파일에 대한 종속성 문제나 Web.config 관련 충돌이 발생할 수 있다고 함 

MvcBuildViews를 다시 false로 설정한 후 해당 에러가 발생하지 않았음 

 

MvcBuildViews를 false로 설정하면 빌드 속도가 빨라지고, 뷰 컴파일 관련 문제로 인해 빌드가 실패하지 않음

뷰 파일에 구문 오류가 있어도 빌드 시점에 감지되지 않기 때문에, 오류를 발견하기 위해 뷰를 실제로 실행해봐야 함 

 

MvcBuildViews 설정은 해당 프로젝트 csproj 파일에서 수정 가능하다. 

728x90
반응형
LIST