compilação Element (ASP.NET Settings Schema)

[Esta documentação destina-se apenas à visualização e está sujeita a alterações em versões posteriores. Os tópicos em branco estão incluídos como espaços reservados.]

Configura todas as configurações de compilação que o ASP.NET usa para compilar aplicativos.

<compilation 
   debug="[true|false]"
   batch="[true|false]"
   batchTimeout="number of seconds"
   defaultLanguage="language" 
   explicit="[true|false]" 
   maxBatchSize="maximim number of pages"
   maxBatchGeneratedFileSize="maximum combined size"
   numRecompilesBeforeAppRestart="number"
   strict="[true|false]" 
   tempDirectory="temporary files directory"
   urlLinePragmas="[true|false]"
   optimizeCompilations="[true|false]"
   targetFramework="2.0|3.0|3.5|4.0"
   assemblyPostProcessorType="assembly post processor, assembly"
>
   <assemblies>...</assemblies> 
   <buildProviders>...</buildProviders>
   <folderLevelBuildProviders>...</folderLevelBuildProviders>
   <codeSubDirectories>...</codeSubDirectories>
   <compilers>...</compilers>
   <expressionBuilders>...</expressionBuilders>
</compilation>

Attributes and Elements

As seções a seguir descrevem atributos, elementos filho, e elementos pai.

Attributes

Atributo

Descrição

assemblyPostProcessorType

Opcional String atributo.

Especifica uma etapa de compilação a para um assembly, fazendo referência a um pós-processador assembly. Use o formato "assembly lançar processador,assembly". O assembly lançar processador deve implementar a IAssemblyPostProcessor interface. Usar esse método de pós-processamento força a depuração na compilação, o que você pode substituir ao especificar o modo de implantação.

Esse atributo é novo na.NET Framework versão 2.0.

O padrão é uma seqüência vazia.

batch

Opcional Boolean atributo.

Indica se o processamento em lotes é aceita.

Se True, elimina o atraso causado por compilação necessária quando você acessa um arquivo pela primeira vez. Quando esse atributo é definido como True,ASP.NET pré-compila todos os arquivos não compilados em um modo de lote, o que causa um atraso na primeira vez ainda maior que os arquivos são compilados. No entanto, após esse intervalo inicial, o atraso de compilação é eliminado no acesso subseqüente do arquivo.

O padrão é True.

batchTimeout

Opcional TimeSpan atributo.

Especifica o período de tempo limite, em segundos, para compilação em lotes. Se a compilação não pode ser concluída dentro do período de tempo limite, o compilador reverte para o modo de compilação única para a página atual.

O padrão é "900" (15 minutos).

debug

Opcional Boolean atributo.

Especifica se deve ser compilar binários de depuração em vez de binários finais.

O padrão é False.

defaultLanguage

Opcional String atributo.

Especifica o padrão de linguagem, de programação, como "C#" ou "PERL", para usar em arquivos de compilação dinâmica. Nomes de idiomas são definidos usando o compiladores elemento da System. CodeDom seção ou o compiladores elemento filho desse elemento (obsoleto).

O padrão é "vb".

explicit

Opcional Boolean atributo.

Especifica se deve definir o Microsoft Visual Basic explicit opção de compilação. Se True, todas as variáveis devem ser declaradas em um Dim, Private, Public, ou ReDim instrução.

O padrão é True.

maxBatchGeneratedFileSize

Opcional Int32 atributo.

Especifica o tamanho máximo combinado (em KB) dos arquivos de origem gerados por compilação em lote. Em geral, não é ideal para carregar um assembly enorme na memória quando menos bits são realmente necessários. Esse limite ajuda para certificar-se o tamanho dos assemblies dividem-se em um intervalo razoável para que o aplicativo aproveita o mecanismo em lotes sem sobrecarregar o sistema. Isso é semelhante do maxBatchSize.

O padrão é 1000.

maxBatchSize

Opcional Int32 atributo.

Especifica o número máximo de páginas por compilação em lote.

O padrão é 1000.

numRecompilesBeforeAppRestart

Opcional Int32 atributo.

Especifica o número de recompilações dinâmicas de recursos que podem ocorrer antes da reinicialização do aplicativo. Suporte a esse atributo no nível global e do aplicativo, mas não no nível do diretório.

NoteNote
ASP.NET aumenta a NumRecompilesBeforeAppRestart propriedade toda vez que um assembly é invalidado e falha a ser excluído.

O padrão é 15.

optimizeCompilations

Opcional Boolean atributo.

Especifica se a compilação dinâmica será recompilar um site inteiro, se um arquivo de nível superior é alterado. Arquivos de nível superior incluem o arquivo global. asax e todos os arquivos nas pastas Bin e App_Code. Se True, somente os arquivos alterados são recompilados.

O padrão é False.

Para obter mais informações, consulte Understanding ASP.NET Dynamic Compilation.

strict

Opcional Boolean atributo.

Especifica se deseja habilitar o Visual Basic strict opção de compilação.

O padrão é False.

targetFramework

Opcional String atributo.

Especifica a versão do.NET Framework que os destinos do site da Web.

O padrão é Null.

Se este atributo for omitido, a versão de destino é determinada por outras configurações no arquivo Web. config e o pool de aplicativos do IIS que o site está associado. Para obter mais informações, consulte CompilationSection.TargetFramework e .NET Framework Targeting for Web Projects.

tempDirectory

Opcional String atributo.

Especifica o diretório a ser usado para armazenar arquivos temporários durante a compilação.

The default is an empty string ("").

No caso de uma seqüência vazia, e se o processo atual tenha as permissões de acesso necessários, os arquivos são armazenados na %FrameworkInstallLocation%\ Arquivos ASP.Diretório de arquivos de NET.

Observe que somente os processos com permissões de confiança alto podem acessar o %FrameworkInstallLocation%\ Arquivos ASP.NET temporários.

urlLinePragmas

Opcional Boolean atributo.

Especifica se o compilador deve usar URLs, em vez de caminhos físicos.

O padrão é False.

Child Elements

Elemento

Descrição

assemblies

Define uma coleção de nomes de assemblies que são usados durante a compilação de um aplicativo ASP.Recurso NET.

buildProviders

Define uma coleção de provedores de compilação que são usados para compilar arquivos de recurso personalizado. Para mais informações, consulte a classe BuildProvider.

codeSubDirectories

Define uma coleção ordenada de subdiretórios que contém os arquivos que são compilados em tempo de execução.

compilers

Define um conjunto de opções do compilador.

NoteNote
No.NET Framework versão 2.0 e versões posteriores, esse elemento é preterido em favor da compiladores elemento da System. CodeDom seção.No entanto, usando o compilers elemento filho da compilation elemento ainda é válido e substitui a compilers elemento que está localizado na system.codedom seção.

expressionBuilders

Define uma coleção de seqüências de recurso a ser usado durante a compilação. As seqüências de caracteres de recurso associar prefixos construtores de expressões.

folderLevelBuildProviders

Define uma coleção de provedores de compilação que são usados para compilar arquivos de recurso personalizado em pastas específicas. Criar provedores são mapeados para extensões de arquivo e são usados para gerar o código de arquivos do tipo especificado. Para mais informações, consulte a classe FolderLevelBuildProvider.

Parent Elements

Elemento

Descrição

configuration

Especifica o elemento raiz necessários em cada arquivo de configuração que é usado pelo common language runtime e.Aplicativos do NET Framework.

system.web

Especifica o elemento raiz para o ASP.Definições de configuração de rede em uma configuração de arquivo e contém elementos de configuração que configurar aplicativos ASP.Comportamento de aplicativos da Web do NET.

Remarks

O compilation elemento configura todas as configurações de compilação que o ASP.NET usa para compilar aplicativos.

No.NET Framework versão 2.0, o compilers elemento filho da compilation elemento é preterido em favor da compiladores elemento da System. CodeDom seção. No entanto, usando o compilers elemento filho da compilation elemento ainda é válido e substitui a compilers elemento que está localizado na system.codedom seção.

Configuração padrão

O seguinte padrão compilation elemento não está explicitamente configurado no arquivo Machine. config ou no arquivo Web. config raiz. No entanto, ele é a configuração padrão retornada pelo aplicativo. Itens são adicionados para o assemblies, buildProviders, e expressionBuilders coleções no arquivo Web. config raiz.

<compilation 
   tempDirectory="" 
   debug="false" 
   strict="false" 
   explicit="true" 
   batch="true" 
   batchTimeout="900" 
   maxBatchSize="1000" 
   maxBatchGeneratedFileSize="1000" 
   numRecompilesBeforeAppRestart="15" 
   defaultLanguage="vb" 
   urlLinePragmas="false" 
   assemblyPostProcessorType=""
>
   <assemblies>
       <clear />
   </assemblies>
   <buildProviders>
       <clear />
   </buildProviders>
   <expressionBuilders>
       <clear />
   </expressionBuilders>
</compilation>

O seguinte elemento de compilação padrão é configurado no arquivo Machine. config na.NET Framework versão 1.1. Configurações semelhantes existem na.NET Framework versão 1.0, com exceção dos números de versão.

<compilation debug="false" explicit="true" defaultLanguage="vb">
   <compilers>
      <compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CSharp.CSharpCodeProvider, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" warningLevel="1"/>
      <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" type="Microsoft.VisualBasic.VBCodeProvider, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
      <compiler language="js;jscript;javascript" extension=".js" type="Microsoft.JScript.JScriptCodeProvider, Microsoft.JScript, Version=7.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
      <compiler language="VJ#;VJS;VJSharp" extension=".jsl" type="Microsoft.VJSharp.VJSharpCodeProvider, VJSharpCodeProvider, Version=7.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/></compilers>
   <assemblies>
      <add assembly="mscorlib"/>
      <add assembly="System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
      <add assembly="System.Web, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
      <add assembly="System.Data, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
      <add assembly="System.Web.Services, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
      <add assembly="System.Xml, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
      <add assembly="System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
      <add assembly="System.EnterpriseServices, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
      <add assembly="System.Web.Mobile, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
      <add assembly="*"/>
   </assemblies>
</compilation>

Exemplo

O exemplo de código a seguir demonstra como definir as configurações de compilação para um aplicativo.

<configuration>
   <system.web>
      <compilation defaultLanguage="VB"
         targetFramework="4.0"
         debug="true"
         numRecompilesBeforeAppRestart="15">
         <assemblies>
            <add assembly="ADODB"/>
            <add assembly="*"/>
         </assemblies>

         <codeSubDirectories>
           <add directoryName="mySubDir1"/>
           <add directoryName="mySubDir2"/>
           <add directoryName="mySubDir3"/>
         </codeSubDirectories>

         <buildProviders>
            <buildProvider 
               extension=".mafx" type="BuildProviderType, 
                          BuildProviderAssembly"
            />
        </buildProviders>
     </compilation>
   </system.web>
</configuration>

Element Information

Manipulador da seção de configuração

CompilationSection

Membro de configuração

Compilation

Locais configuráveis

Machine.config

Web. config de nível de raiz

Web. config de nível de aplicativo

Directory–level virtuais ou físicas Web. config

Requisitos

Serviços de Informações da Internet da Microsoft (IIS) 5.0, 5.1 ou 6.0

.NET Framework 1.0, 1.1, 2.0

2003 De Visual Studio ou Visual Studio de 2005

Consulte também

Tasks

How to: Configure Specific Folders Using Location Settings

How to: Lock ASP.NET Configuration Settings

Reference

System. Web Element (ASP.NET Settings Schema)

conjuntos de elemento de compilação (ASP.NET Settings Schema)

buildProviders elemento para compilação (ASP.NET Settings Schema)

codeSubDirectories elemento for compilation (ASP.NET Settings Schema)

Elemento de compilers for compilation (ASP.NET Settings Schema)

expressionBuilders elemento para compilação (ASP.NET Settings Schema)

configuração Element (General Settings Schema)

System.Configuration

System.Web.Configuration

CompilationSection

Compilation

Concepts

ASP.NET Compilation Model

ASP.NET Web Page Syntax Overview

ASP.NET Configuration File Hierarchy

Securing Configuration

Configuration Inheritance

.NET Framework Targeting for Web Projects

Other Resources

Configurações gerais (ASP.NET)

ASP.Definições de configuração de rede

Configuring ASP.NET Applications

ASP.NET Configuration Files

ASP.NET Configuration API