현재 RC2 빌드 시스템이 완전히 Compiler/Preprocess
폴더를 무시하는 것 - 당신은 말 그대로 아무것도 넣을 수없고 빌드 오류도 발생하지 않습니다. Roslyn이 예비 컴파일을하기 위해 백업 될 때까지는 현재 빌드 단계에서 .cshtml 파일을 확인할 수 없다고 생각합니다.
는
내가 찾은 유일한 해결 방법은/어떤 더러운 벌금을 사용하여 프로젝트에 모든 .cshtml 파일을 열 트릭을 교체하고, 인텔리 엔진이 면도기 코드를 확인해야하는 비주얼 스튜디오를 얻는 것입니다. commit that removed razor precompilation 보면
는
업데이트
, 전체 RazorPreCompileModule
자체가 실제로 제거 된 것으로 보인다 및 won't be back for some time. 이 코드가 프로젝트에 수동으로 다시 추가 되더라도 dotnet 빌드는 컴파일 모듈을 실행하지 않습니다.
업데이트 2
보기 컴파일 다시 ASP.NET 코어 1.1입니다!
"dependencies": {
"Microsoft.AspNetCore.Mvc.Razor.ViewCompilation.Design": "1.1.0-preview4-final"
}
과 당신의 "도구"섹션에 다음과 같은 :
"tools": {
"Microsoft.AspNetCore.Razor.Tools”: “1.1.0-preview4-final",
"Microsoft.AspNetCore.Mvc.Razor.ViewCompilation.Tools": "1.1.0-preview4-final"
}
하고 "스크립트"아래
는
그것을 사용하려면 은 "종속"섹션 project.json에 다음을 추가 "postpublish"에 면도칼 사전 컴파일 명령을 추가 :
"scripts": {
"postpublish": [
"dotnet razor-precompile -configuration %publish:Configuration% -framework %publish:TargetFramework% -output-path %publish:OutputPath% %publish:ProjectPath%"
]
}
업데이트 3 - csproj
마침내 우리는 VS2017로 이동하여 csproj로 프로젝트를 이전했습니다. 물론 이것은 면도칼 사전 컴파일을 부러 뜨 렸습니다. 그리고 소년은 그것을 수정하는 방법을 알아 내기위한 토끼 구멍이었습니다 - official instructions are here.
아마도 첫 번째 문제는 자동화 된 xproj/project.json -> csproj 마이그레이션 실패입니다. project.json
에 postpublish
스크립트 섹션이있는 경우 자동화 된 이전이 실패하므로 이전하기 전에 해당 섹션을 완전히 삭제하십시오.
.csproj
에 <Target Name="PostPublishTarget" AfterTargets="Publish">...</Target>
을 추가하여 게시 게시 스크립트를 실행할 수는 있지만 이제는 면도기 사전 컴파일에 필요하지 않습니다.그래서 속히, 여기에 프로젝트를 마이그레이션 한 후, VS2017/csproj 토지에 면도칼 사전 컴파일을 설정하는 방법은 다음과 같습니다
이 csproj에 올바른보기 편집 패키지에 대한 참조를 추가합니다. 프로젝트의 <PackageReference>
모든 태그를 포함하는 <ItemGroup>
에서 추가
<PackageReference Include="Microsoft.AspNetCore.Mvc.Razor.ViewCompilation" Version="1.1.0" />
이 csproj에 MvcRazorCompileOnPublish 속성을 추가합니다. 등 프로젝트 <VersionPrefix>
, <TargetFramework>
를 포함하는 <PropertyGroup>
섹션에서 추가
<MvcRazorCompileOnPublish>true</MvcRazorCompileOnPublish>
하면됩니다. 빌드 시스템은 이제 프로젝트가 게시 될 때마다 면도기 사전 컴파일을 실행합니다. 게시 할 때 빌드 출력에 Razor view compilation for myApp -> obj\Release\netcoreapp1.1\myApp.PrecompiledViews.dll
과 같은 내용이 표시되어야합니다.
어떻게하면 ASP 핵심 프로젝트가 csproj 형식으로 다시 이전 되었습니까? – AdamC
마지막으로 csproj :)에 대한 답변을 업데이트했습니다. – Ryan
@Ryan이 글은 게시 용입니다. 정상적인 빌드/컴파일은 어떨까요? –