0

Visual Studio에서 Azure에 배포 할 ASP.NET 응용 프로그램을 사전 컴파일하려고합니다. 나는 내 .csproj 파일에 다음을 추가했습니다 :aspnet_compiler에 대한이 호출이 새 .NET 어셈블리를 생성하지 않는 이유는 무엇입니까?

Starting AspNetCompiler for [PathToMyProject] 
C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_compiler.exe -v/-p [PathToMyProject] 

것은 내가 오류를 심는 경우 : 이제

<Target Name="AfterBuild"> 
    <Message Text="Starting AspNetCompiler for $(ProjectDir)" Importance="high" /> 
    <AspNetCompiler 
     VirtualPath="/" 
     PhysicalPath="$(ProjectDir)" 
    /> 
</Target> 

나는 서비스 패키지를 준비하려면 Visual Studio를 물어 빌드 출력에 다음이 나타납니다 뷰 파일에서 오류가 식별되고 빌드가 너무 명확하게 분리되어 프리 컴파일이 수행됩니다.

그러나 결과에 새로운 .NET 어셈블리가 표시되지 않습니다.

어떻게 ASP.NET 컴파일러에서 뷰에 대한 .NET 어셈블리를 만들 수 있습니까?

답변

4

당신은 출력 디렉토리를 지정하지 않으면이 폴더에 출력을 찾아야한다 :

C : \ WINDOWS \ Microsoft.NET 프레임 워크 \ \ v4.0.30319 \ 임시 ASP.NET 파일 \ 루트 \ some-random-id (최신 디렉토리를 찾기 위해 수정 된 날짜를 기준으로 정렬 해보십시오).

호출 당신은 또한 명령에 출력 폴더를 추가 할 수 있습니다 aspnet_compiler.exe :

aspnet_compiler -v "/" -p "C:\Projects\WebApplication1\WebApplication1" C:\CompileOutput 
다음

내 C에서 출력 참조 : \ CompiledOutput 폴더

enter image description here

+0

을 프리 컴파일 후 임의의 폴더 경로를 가져 와서 거기에서 물건을 복사 할 수 있습니까? 나는 경로를 하드 코딩하는 것에 대해 낙관적이지 않다. – sharptooth

+0

랜덤 폴더에 액세스하는 방법을 모르겠지만 MSBuild를 사용하고 있으므로 다음과 같이 작업을 간단히 수정할 수 있습니다 :''을 선택하십시오. 이렇게하면 솔루션 디렉토리의 PreCompiledOutput 폴더에 모든 내용이 출력되고 나중에 해당 폴더의 파일을 복사하여 정리할 수 있습니다. –

관련 문제