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.
<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>
Attributs et éléments
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 "programme de post-traitement d'assembly, assembly". Le programme de post-traitement d'assembly 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 .NET Framework version 2.0. 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, ce 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éconseillé). 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.
Remarque
ASP.NET augmente la propriété NumRecompilesBeforeAppRestart chaque fois qu'un assembly n'est plus valide et ne peut pas être supprimé.
La valeur par défaut est 15. |
optimizeCompilations |
Attribut Boolean facultatif. Spécifie si la compilation dynamique recompilera l'intégralité d'un site en cas de modification d'un fichier de niveau supérieur. Les fichiers de niveau supérieur incluent le fichier Global.asax et tous les fichiers contenus dans les dossiers Bin et App_Code. Si la valeur est True, seuls les fichiers modifiés sont recompilés. La valeur par défaut est False. Pour plus d'informations, consultez Fonctionnement de la compilation dynamique d'ASP.NET. |
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. |
targetFramework |
Attribut String facultatif. Spécifie la version du .NET Framework ciblée par le site Web. La valeur par défaut est Null. Si cet attribut est omis, la version cible est déterminée par d'autres paramètres du fichier Web.config et par le pool d'applications IIS auquel le site Web est associé. Pour plus d'informations, consultez CompilationSection.TargetFramework et Multi-ciblage du .NET Framework pour les projets Web ASP.NET. |
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 et si le processus actuel a les autorisations d'accès requises, les fichiers sont stockés dans le répertoire %FrameworkInstallLocation%\Temporary ASP.NET Files. Notez que seuls les processus avec des autorisations de niveau de confiance élevé peuvent accéder au répertoire %FrameworkInstallLocation%\Temporary ASP.NET Files. |
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. Pour plus d'informations, consultez la classe BuildProvider. |
codeSubDirectories |
Définit une collection ordonnée des sous-répertoires contenant les fichiers compilés au moment de l'exécution. |
compilers |
Définit une collection d'options du compilateur.
Remarque
Dans le .NET Framework version 2.0 et les versions ultérieures, cet élément est déconseillé 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.
|
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. |
folderLevelBuildProviders |
Définit une collection de fournisseurs de générations qui sont utilisés pour compiler des fichiers de ressources personnalisées dans des dossiers spécifiques. Les fournisseurs de générations sont mappés aux extensions de fichier et sont utilisés pour générer le code de fichiers du type spécifié. Pour plus d'informations, consultez la classe FolderLevelBuildProvider. |
É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. |
Notes
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éconseillé 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.
Configuration par défaut
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>
Exemple
L'exemple de code suivant montre comment configurer des paramètres de compilation pour une application.
<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>
Informations sur les éléments
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 |
Voir aussi
Tâches
Comment : configurer des répertoires spécifiques à l'aide des paramètres d'emplacement
Comment : 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)
Concepts
Vue d'ensemble de la compilation ASP.NET
Vue d'ensemble de la syntaxe des pages 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
Multi-ciblage du .NET Framework pour les projets Web ASP.NET
Autres ressources
Paramètres généraux de configuration (ASP.NET)
Paramètres de configuration ASP.NET
Administration de site Web ASP.NET