Sdílet prostřednictvím


compilation element (schéma nastavení technologie ASP.NET)

Konfiguruje všechna nastavení kompilace, které technologie ASP.NET pro kompilaci používá.

<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>

Atributy a prvky

Následující části popisují atributy, podřízené prvky a rodičovské prvky.

v případě vícehodnotových atributů

Atribut

Popis

assemblyPostProcessorType

Volitelný String atributu.

Určuje krok následující po procesu kompilace sestavení odkazem na post-procesor sestavení. Použijte formát "post procesor sestavení,sestavení". Post procesor sestavení musí implementovat rozhraní IAssemblyPostProcessor. Použití této metody post-processingu vynutí ladění při sestavení, které je možné přepsat při určování režimu nasazení.

Tento atribut je v rozhraní .NET Framework verze 2.0 nový.

Výchozím nastavením je prázdný řetězec.

batch

Nepovinný atribut Boolean.

Označuje, zda je dávkování podporováno.

V případě True eliminuje zpoždění způsobené sestavováním požadovaným při prvním přístupu k souboru. Pokud tento atribut nastaven na True, ASP.Všechny jsou kompilovány soubory v režimu dávkových souborů způsobuje i delší doba zpoždění první nezkompilovaný NET precompiles. Avšak po tomto počátečním zpoždění je zpoždění zkráceno o následný přístup k souboru.

Výchozí hodnota je True.

batchTimeout

Nepovinný atribut TimeSpan.

Určuje časový limit pro dávku kompilace (v sekundách). Pokud kompilace nemůže být dokončena v časovém limitu, kompilátor přejde do režimu jedné kompilace pro aktuální stránku.

Výchozí hodnota je "900" (15 minut).

debug

Nepovinný atribut Boolean.

Určuje, zda mají být kompilovány binární soubory ladění místo prostých binárních souborů.

Výchozí hodnota je False.

defaultLanguage

Nepovinný atribut String.

Určuje výchozí programovací jazyk, jako například "C#" nebo "PERL", pro použití v souborech dynamické kompilace. Názvy jazyků jsou definovány buď pomocí elementu compilers oddílu systém.codeDom nebo podřízeného elementu compilers tohoto elementu (zastaralé).

Výchozí hodnota je "vb".

explicit

Nepovinný atribut Boolean.

Určuje, zda nastavit volbu kompilace explicit jazyka Microsoft Visual Basic. V případě True musí být všechny proměnné deklarovány pomocí příkazu Dim, Private, Public nebo ReDim.

Výchozí hodnota je True.

maxBatchGeneratedFileSize

Nepovinný atribut Int32.

Určuje maximální kombinovanou velikost (v KB) vytvořených zdrojových souborů na jednu dávkovou kompilaci. Obecně není ideální načíst velké sestavení do paměti, pokud je aktuálně potřeba méně bitů. Toto omezení pomáhá k ujištění se, že velikosti sestavení spadají do přiměřeného rozsahu tak, aby aplikace využila mechanismu dávek bez přetížení systému. To je podobné maxBatchSize.

Výchozí hodnota je 1000.

maxBatchSize

Nepovinný atribut Int32.

Určuje maximální počet stránek na jednu dávkovou kompilaci.

Výchozí hodnota je 1000.

numRecompilesBeforeAppRestart

Nepovinný atribut Int32.

Určuje počet dynamických překompilování prostředků, ke kterým může dojít před restartováním aplikace. Tento atribut je podporován na globální a aplikační úrovni, ale nikoli na úrovni adresáře.

PoznámkaPoznámka
Technologie ASP.NET zvyšuje vlastnost NumRecompilesBeforeAppRestart pokaždé, když je sestavení zrušeno a smazání se nezdaří.

Výchozí hodnota je 15.

optimizeCompilations

Nepovinný atribut Boolean.

Určuje, zda dynamická kompilace překompiluje celý web v případě změny souboru na nejvyšší úrovni. Soubory nejvyšší úrovně zahrnují soubor Global.asax a všechny soubory ve složkách Bin a App_Code. V případě True jsou překompilovány pouze změněné soubory.

Výchozí hodnota je False.

Další informace naleznete v tématu Vysvětlení dynamické kompilace ASP.NET.

strict

Volitelný Boolean atributu.

Určuje, zda chcete povolit volbu kompilace strict jazyka Visual Basic.

Výchozí hodnota je False.

targetFramework

Nepovinný atribut String.

Určuje verzi rozhraní .NET Framework, kterou webová stránka používá.

Výchozí hodnota je Null.

Pokud je tento atribut vynechán, je použitá verze určena jiným nastavením v souboru Web.config a fondem aplikace IIS, se kterým je webová stránka asociována. Další informace naleznete v tématu CompilationSection.TargetFramework a Cílení na více verzí rozhraní .NET framework pro webové projekty ASP.NET.

tempDirectory

Nepovinný atribut String.

Určuje adresář pro skladování dočasných souborů během kompilace.

Výchozí hodnota je prázdný řetězec ("").

Pokud je prázdný řetězec a pokud aktuální proces má potřebná přístupová oprávnění, jsou soubory uloženy v adresáři %FrameworkInstallLocation%\Temporary ASP.NET Files.

Všimněte si, že pouze procesy s vysoce důvěryhodnými oprávněními mohou přistupovat k %FrameworkInstallLocation%\ Temporary ASP.NET Files.

urlLinePragmas

Nepovinný atribut Boolean.

Určuje, zda by měl kompilátor používat adresy URL místo fyzických cest.

Výchozí hodnota je False.

Podřízené prvky

Prvek

Popis

assemblies

Definuje sadu názvů sestavení, která se používá během kompilace prostředků technologie ASP.NET.

buildProviders

Definuje kolekci zprostředkovatelů sestavení, kteří slouží ke kompilaci vlastních souborů prostředků. Další informace naleznete v tématu o třídě BuildProvider.

codeSubDirectories

Definuje uspořádanou kolekci podadresářů obsahující soubory, které jsou kompilovány za běhu.

compilers

Definuje kolekci voleb kompilátoru.

PoznámkaPoznámka
V rozhraní .NET Framework verze 2.0 a novějších je tento element označen jako zastaralý ve prospěch elementu compilers oddílu system.codeDom.Avšak použití podřízeného elementu compilers elementu compilation je stále platné a přepíše element compilers, který je umístěn v oddílu system.codedom.

expressionBuilders

Definuje kolekci řetězců prostředku pro použití během kompilace. Řetězce prostředku asociují předpony s tvůrci výrazů.

folderLevelBuildProviders

Definuje kolekci zprostředkovatelů sestavení, která slouží ke kompilaci vlastních souborů prostředků v určitých složkách. Poskytovatelé sestavení jsou mapováni na přípony souborů a používají se pro generování kódu ze souborů určeného typu. Další informace naleznete FolderLevelBuildProvider Třída

Nadřazené prvky

Prvek

Popis

configuration

Určuje požadovaný kořenový element nacházející se v každém konfiguračním souboru, který je používán modulem CLR (Common Language Runtime) a aplikacemi rozhraní .NET Framework.

system.web

Určuje kořenový element nastavení konfigurace ASP.NET konfiguračního souboru a obsahuje prvky, které konfigurují webové aplikace ASP.NET a řídí jejich chování.

Poznámky

Element compilation konfiguruje všechna nastavení kompilace, která technologie ASP.NET používá pro kompilaci aplikací.

V rozhraní .NET Framework verze 2.0 je podřízený prvek compilers elementu compilation označen jako zastaralý ve prospěch elementu compilers oddílu system.codeDom. Avšak použití podřízeného elementu compilers elementu compilation je stále platné a přepíše element compilers, který je umístěn v oddílu system.codedom.

Výchozí konfigurace

Následující výchozí element compilation není explicitně nakonfigurován v souboru Machine.config nebo v kořenovém souboru web.config. To je však výchozí konfigurace, kterou vrací aplikace. Položky jsou přidány do kolekcí assemblies, buildProviders a expressionBuilders v kořenovém souboru web. konfigurační soubor.

<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>

Následující výchozí element je v rozhraní .NET Framework verze 1.1 konfigurován v souboru Machine.config. Podobná nastavení existují v rozhraní .NET Framework verze 1.0 s výjimkou čísel verzí.

<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>

Příklad

Následující příklad kódu demonstruje nastavení konfigurace kompilace aplikace.

<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>

Informace prvku

Obslužná rutina konfiguračního oddílu

CompilationSection

Konfigurační člen

Compilation

Konfigurovatelná umístění

Machine.config

Web.config kořenové úrovně

Web.config aplikační úrovně

Soubor web.config na úrovni fyzického nebo virtuálního adresáře

Požadavky

Microsoft Internet Information Services (IIS) 5.0, 5.1 nebo 6.0

.NET Framework 1.0, 1.1, 2.0

Visual Studio 2003 nebo Visual Studio 2005

Viz také

Úkoly

Postup: Konfigurace specifických adresářů pomocí nastavení místa

Postupy: Uzamknutí nastavení konfigurace technologie ASP.NET

Odkaz

Element system.web (schéma nastavení ASP.NET)

Podelement assemblies elementu compilation (schéma nastavení ASP.NET)

Podelement buildProviders elementu compilation (schéma nastavení ASP.NET)

Podelement codeSubDirectories elementu compilation (schéma nastavení ASP.NET)

Podelement compilers elementu compilation (schéma nastavení ASP.NET)

Podelement expressionBuilders elementu compilation (schéma nastavení ASP.NET)

Element configuration (schéma obecného nastavení)

System.Configuration

System.Web.Configuration

CompilationSection

Compilation

Koncepty

Přehled kompilace technologie ASP.NET

Přehled syntaxe webová stránky technologie ASP.NET

Hierarchie a dědičnost konfiguračních souborů technologie ASP.NET

Zabezpečení konfigurace technologie ASP.NET

Scénáře konfigurace technologie ASP.NET

Cílení na více verzí rozhraní .NET framework pro webové projekty ASP.NET

Další zdroje

Obecné nastavení konfigurace (technologie ASP.NET)

Nastavení konfigurace ASP.NET

Správa webu ASP.NET

Konfigurační soubory technologie ASP.NET

Rozhraní API konfigurace technologie ASP.NET