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á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á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 |
|
Konfigurační člen |
|
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í)
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)