compilation, élément (Schéma des paramètres ASP.NET)
Configure tous les paramètres de compilation qu'ASP.NET utilise pour compiler des applications.
<configuration>, élémentsystem.web, élément (Schéma des paramètres ASP.NET)
compilation, élément (Schéma des paramètres ASP.NET)
<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]" assemblyPostProcessorType="assembly post processor, assembly" > <assemblies>...</assemblies> <buildproviders>...</buildproviders> <codeSubDirectories>...</codeSubDirectories> <compilers>...</compilers> <expressionBuilders>...</expressionBuilders> </compilation>
Les sections suivantes décrivent des attributs, des éléments enfants et des éléments parents.
Attributs
| Attribut | Description |
|---|---|
| assemblyPostProcessorType | Attribut String facultatif. Spécifie une étape de compilation de post-traitement d'un assembly en faisant référence à un programme de post-traitement d'assembly. Utilisez le format "assembly post processor,, assembly". Le assembly post processor doit implémenter l'interface IAssemblyPostProcessor. L'utilisation de cette méthode de post-traitement impose un débogage de la compilation, que vous pouvez substituer en spécifiant le mode de déploiement. Cet attribut est une nouveauté de la version 2.0 du .NET Framework. La valeur par défaut est une chaîne vide. |
| batch | Attribut Boolean facultatif. Indique si le traitement par lots est activé. Si la valeur est True, élimine le délai provoqué par la compilation requise lorsque vous accédez pour la première fois à un fichier. Lorsque cet attribut a la valeur True, ASP.NET précompile tous les fichiers non compilés en mode batch, qui induit un délai encore plus long lors de la première compilation des fichiers. Toutefois, par la suite, le délai de compilation est éliminé lors de l'accès suivant au fichier. La valeur par défaut est True. |
| batchTimeout | Attribut TimeSpan facultatif. Spécifie le délai d'attente, exprimé en secondes, pour la compilation par lots. Si la compilation ne peut pas être effectuée dans le délai imparti, le compilateur revient au mode de compilation simple pour la page en cours. La valeur par défaut est "900" (15 minutes). |
| debug | Attribut Boolean facultatif. Spécifie s'il convient de compiler avec des fichiers binaires de débogage ou en version commerciale. La valeur par défaut est False. |
| defaultLanguage | Attribut String facultatif. Spécifie le langage de programmation par défaut, par exemple "C#" ou « PERL », à utiliser dans les fichiers de compilation dynamique. Les noms des langages sont définis à l'aide de l'élément compilers de la section system.codeDom, ou de l'élément enfant compilers de cet élément (désapprouvé). La valeur par défaut est "vb". |
| explicit | Attribut Boolean facultatif. Spécifie s'il faut définir l'option de compilation explicit de Microsoft Visual Basic. Si la valeur est True, toutes les variables doivent être déclarées à l'aide d'une instruction Dim, Private, Public ou ReDim. La valeur par défaut est True. |
| maxBatchGeneratedFileSize | Attribut Int32 facultatif. Spécifie la taille maximale combinée (en Ko) des fichiers sources générés au cours d'une compilation par lots. En général, il est déconseillé de charger un assembly volumineux en mémoire lorsqu'en fait, un nombre inférieur de bits est requis. Cette limite garantit que la taille des assemblys reste dans une plage acceptable afin que l'application tire parti du mode batch sans surcharger le système. Cet attribut est similaire à maxBatchSize. La valeur par défaut est 1000. |
| maxBatchSize | Attribut Int32 facultatif. Spécifie le nombre maximal de pages générées au cours d'une compilation par lots. La valeur par défaut est 1000. |
| numRecompilesBeforeAppRestart | Attribut Int32 facultatif. Spécifie le nombre de recompilations dynamiques de ressources qui peuvent intervenir avant le redémarrage de l'application. Cet attribut est pris en charge au niveau global et au niveau de l'application, mais pas au niveau du répertoire. La valeur par défaut est 15. |
| strict | Attribut Boolean facultatif. Spécifie s'il convient d'activer l'option de compilation strict de Visual Basic. La valeur par défaut est False. |
| tempDirectory | Attribut String facultatif. Spécifie le répertoire à utiliser pour le stockage des fichiers temporaires pendant la compilation. La valeur par défaut est une chaîne vide. Dans le cas d'une chaîne vide, les fichiers sont stockés sous % FrameworkInstallLocation% \Temporary ASP.NET Files lorsque l'identité du processus actif possède l'autorisation d'accès requise à ce répertoire. Sinon, le système lève une exception ou accède à d'autres emplacements. Par exemple, il est possible de créer le répertoire temp sous le profil utilisateur. |
| urlLinePragmas | Attribut Boolean facultatif. Spécifie si le compilateur doit utiliser des URL plutôt que des chemins d'accès physiques. La valeur par défaut est False. |
Éléments enfants
| Élément | Description | ||
|---|---|---|---|
| assemblies | Définit une collection de noms d'assemblys qui sont utilisés pendant la compilation d'une ressource ASP.NET. | ||
| buildproviders | Définit une collection des fournisseurs de générations qui sont utilisés pour compiler des fichiers de ressources personnalisés. Cet élément est une nouveauté de la version 2.0 du .NET Framework. | ||
| codeSubDirectories | Définit une collection ordonnée des sous-répertoires contenant les fichiers compilés au moment de l'exécution. Cet élément est une nouveauté de la version 2.0 du .NET Framework. | ||
| compilers | Définit une collection d'options du compilateur.
| ||
| expressionBuilders | Définit une collection de chaînes de ressources à utiliser au cours de la compilation. Les chaînes de ressources associent des préfixes à des générateurs d'expressions. Cet élément est une nouveauté de la version 2.0 du .NET Framework. |
Éléments parents
| Élément | Description |
|---|---|
| configuration | Spécifie l'élément racine requis dans chaque fichier de configuration utilisé par le Common Language Runtime et les applications .NET Framework. |
| system.web | Spécifie l'élément racine des paramètres de configuration ASP.NET dans un fichier de configuration et contient des éléments de configuration qui configurent le comportement des applications Web ASP.NET. |
L'élément compilation configure tous les paramètres de compilation qu'ASP.NET utilise pour compiler des applications.
Dans le .NET Framework version 2.0, l'élément enfant compilers de l'élément compilation est désapprouvé en faveur de l'élément compilers de la section system.codeDom. Toutefois, l'utilisation de l'élément enfant compilers de l'élément compilation est encore valide et substitue l'élément compilers situé dans la section system.codedom.
L'élément compilation par défaut n'est pas configuré explicitement dans le fichier Machine.config ou dans le fichier Web.config racine. Toutefois, il s'agit de la configuration par défaut retournée par l'application. Les éléments sont ajoutés aux collections assemblies, buildProviders et expressionBuilders dans le fichier Web.config racine.
<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>
L'élément compilation par défaut suivant est configuré dans le fichier Machine.config de la version 1.1 du .NET Framework. La version 1.0 du .NET Framework propose des paramètres similaires à l'exception des numéros de version.
<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>
L'exemple de code suivant montre comment configurer des paramètres de compilation pour une application.
<configuration>
<system.web>
<compilation defaultLanguage="VB"
debug="true"
numRecompilesBeforeAppRestart="15">
<compilers>
<compiler
language="VB;VBScript"
extension=".cls"
type="Microsoft.VisualBasic.VBCodeProvider,system,
Version=1.0.5000.0, Culture=neutral,
PublicKeyToken=b77a5c561934e089"/>
<compiler
language="C#;Csharp"
extension=".cs"
type="Microsoft.CSharp.CSharpCodeProvider,system,
Version=1.0.5000.0, Culture=neutral,
PublicKeyToken=b77a5c561934e089"/>
</compilers>
<assemblies>
<add assembly="ADODB"/>
<add assembly="*"/>
</assemblies>
<codeSubDirectories>
<codeSubDirectory directoryName="/aspnet/code/mySubDir1"/>
<codeSubDirectory directoryName="/aspnet/code/mySubDir2"/>
<codeSubDirectory directoryName="/aspnet/code/mySubDir3"/>
</codeSubDirectories>
<buildProviders>
<buildProvider
extension=".mafx" type="BuildProviderType,
BuildProviderAssembly"
/>
</buildProviders>
</compilation>
</system.web>
</configuration>
| Gestionnaire de section de configuration | |
| Membre de configuration | |
| Emplacements configurables | Machine.config Web.config racine Web.config au niveau de l'application Web.config de niveau répertoire virtuel ou physique |
| Configuration requise | Microsoft Internet Information Services (IIS) 5.0, 5.1 ou 6.0 .NET Framework 1.0, 1.1, 2.0 Visual Studio 2003, ou Visual Studio 2005 |
Tâches
Comment : configurer des répertoires spécifiques à l'aide des paramètres de siteComment : verrouiller des paramètres de configuration ASP.NET
Référence
system.web, élément (Schéma des paramètres ASP.NET)assemblies, élément de compilation (Schéma des paramètres ASP.NET)
buildProviders, élément de compilation (Schéma des paramètres ASP.NET)
codeSubDirectories, élément de compilation (Schéma des paramètres ASP.NET)
compilers, élément de compilation (Schéma des paramètres ASP.NET)
expressionBuilders, élément de compilation (Schéma des paramètres ASP.NET)
configuration, élément (Schéma des paramètres généraux)
System.Configuration
System.Web.Configuration
CompilationSection
Compilation
Concepts
Vue d'ensemble de la compilation ASP.NETModèle de code des pages Web ASP.NET
Vue d'ensemble de la précompilation du site Web ASP.NET
Hiérarchie du fichier de configuration ASP.NET et héritage
Sécurisation de la configuration ASP.NET
Scénarios de configuration ASP.NET
Autres ressources
Paramètres généraux de configuration (ASP.NET)Paramètres de configuration ASP.NET
Configuration d'applications ASP.NET
Fichiers de configuration ASP.NET
API de configuration ASP.NET
Remarque