Precompilation para Implantação
-
15-11-2019 - |
Pergunta
Depois de explorar Precompilation para Implantação do tópico eu quero melhorar o meu processo de criação.Agora, o que eu faço é:
- prepare web site utilizando o Web Um Clique em Publicar, por exemplo, para
c:\www\app
diretório, e que o diretório está disponível no IIS através de app (localhost/app
) - Eu lançar
aspnet_compiler.exe -v app c:\www\appprecompiled -f
Agora tenho a pronta aplicação em pré-compilados c:\www\appprecompiled
e está tudo bem.No entanto a minha aplicação é bastante grande, e publicá-lo (passo 1) pegue a cerca de 5 minutos a partir do zero.Então eu me pergunto se é possível evitar a passo , e execute o passo 2 (precompilation) com pasta de origem apontando para a pasta de solução.Eu tentei algo parecido com isto:
aspnet_compiler.exe -v codeapp c:\code\app -f
Onde c:\code\app
é a pasta com a web.config etc arquivos, basicamente, em um projeto com o web site e que a pasta está disponível através de http://localhost/codeapp
.
Mas quando lançar esse comando, eu recebo erros sobre a falta global.asax ou web.erros de configuração:
C:\code\app\obj\debug\package\packagetmp\web.config(18):erro ASPCONFIG:É um erro usar uma seção registrado como allowDefinition='MachineToApplication' além do nível de aplicativo.Este erro pode ser causado por um diretório virtual não configurado como um aplicação no IIS.
E para constar, eu uso o Aplicativo, não Directório Virtual.
Assim é que existe uma maneira de executar precompilation em uma planície, pasta de site?
Solução
Eu usei
aspnet_compiler -p physicalOrRelativePath -v / targetPath
a partir de http://msdn.microsoft.com/en-us/library/ms227976(v=VS.80).aspx e removidos pasta obj antes de executá-lo, e precompilation funciona :)