솔루션 탐색기에서 웹 프로젝트를 마우스 오른쪽 단추로 클릭하십시오. Unload Project
을 클릭하십시오. 프로젝트를 마우스 오른쪽 단추로 클릭하고 Edit <projname>.csproj
을 클릭하십시오.
이 요소가 있는지 확인하십시오 (존재하지 않는 경우 추가하십시오).
<Project>
<PropertyGroup>
<MvcBuildViews>true</MvcBuildViews>
</PropertyGroup>
</Project>
아래로 스크롤하십시오. "빌드 프로세스를 수정하려면 아래 대상 중 하나에 작업을 추가하고 주석 처리를 제거하십시오."라는 주석이 있어야합니다. 마우스 오른쪽,
<Target Name="MvcBuildViews" AfterTargets="AfterBuild" Condition="'$(MvcBuildViews)'=='true'">
<ItemGroup>
<ExtraWebConfigs Include="$(BaseIntermediateOutputPath)\**\web.config" />
<ExtraPackageTmp Include="$([System.IO.Directory]::GetDirectories("$(BaseIntermediateOutputPath)", "PackageTmp", System.IO.SearchOption.AllDirectories))" />
</ItemGroup>
<Delete Files="@(ExtraWebConfigs)" />
<RemoveDir Directories="@(ExtraPackageTmp)" />
<AspNetCompiler VirtualPath="temp" PhysicalPath="$(WebProjectOutputDir)" />
</Target>
가 .csproj
파일을 닫습니다
(위의 코드는 당신은 내가 언급 주석이 표시되지 않는 경우 루트 <Project>
노드의 부모를 가져야한다) : 그 아래에이 마크 업을 추가 솔루션 탐색기에서 프로젝트를 클릭하고 Reload Project
을 클릭하십시오.
이것은보기를 컴파일 단계에 추가하고 오류가 발견되면 빌드를 중단합니다. 나는 이것이 좋은 것임을 발견했다. 왜냐하면 그것 없이는 내가 때때로 나의 사이트를 배치하고 수동으로 명중하기 전까지 오류 목록에서 오류를 발견하지 못하기 때문이다. 경고하면 빌드 단계에 약간의 시간이 추가되어 상당히 느려질 것입니다. 달성하려는 대상에 따라 신속하게 빌드 -> 테스트 워크 플로우를 달성하기 위해 선택적으로 활성화/비활성화 할 수 있습니다.
Chris Hyne의 대답은 MVCBuildViews not working correctly 및 Can Razor views be compiled?입니다.
Resharper를 사용합니까? – Ofiris
아니요, 사용하지 않습니다. – vtortola
RazorGenerator는보기를 컴파일하는 데 훨씬 좋습니다. 나는 그것에 전환하는 것을 고려할 것이다 : https://visualstudiogallery.msdn.microsoft.com/1f6ec6ff-e89b-4c47-8e79-d2d68df894ec 및 NUGET : https://www.nuget.org/packages/RazorGenerator.Mvc/ – mattytommo