CompilationSection クラス
アセンブリ: System.Web (system.web.dll 内)



この例では、compilation セクションの複数の属性に対して、宣言によって値を指定する方法を示しています。これらの属性には、CompilationSection クラスのメンバとしてもアクセスできます。
次の構成ファイルの例では、compilation セクションに対して、宣言によって値を指定する方法を示しています。
<system.web> <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> </system.web>
CompilationSection クラスのメンバを使用する方法を次のコード例に示します。
Imports System Imports System.Collections.Generic Imports System.Text Imports System.Configuration Imports System.Web Imports System.Web.Configuration Namespace Samples.Aspnet.SystemWebConfiguration Class UsingRoleManagerSection Public Shared Sub Main() Try ' Set the path of the config file. Dim configPath As String = "" ' Get the Web application configuration object. Dim config As System.Configuration.Configuration = _ WebConfigurationManager.OpenWebConfiguration(configPath) ' Get the section related object. Dim configSection As System.Web.Configuration.CompilationSection = _ CType(config.GetSection("system.web/compilation"), _ System.Web.Configuration.CompilationSection) ' Display title and info. Console.WriteLine("ASP.NET Configuration Info") Console.WriteLine() ' Display Config details. Console.WriteLine("File Path: {0}", _ config.FilePath) Console.WriteLine("Section Path: {0}", _ configSection.SectionInformation.Name) ' Display Assemblies collection count. Console.WriteLine("Assemblies Count: {0}", _ configSection.Assemblies.Count) ' Display AssemblyPostProcessorType property. Console.WriteLine("AssemblyPostProcessorType: {0}", _ configSection.AssemblyPostProcessorType) ' Display Batch property. Console.WriteLine("Batch: {0}", _ configSection.Batch) ' Set Batch property. configSection.Batch = True ' Display BatchTimeout property. Console.WriteLine("BatchTimeout: {0}", _ configSection.BatchTimeout) ' Set BatchTimeout property. configSection.BatchTimeout = TimeSpan.FromMinutes(15) ' Display BuildProviders collection count. Console.WriteLine("BuildProviders collection count: {0}", _ configSection.BuildProviders.Count) ' Display CodeSubDirectories property. Console.WriteLine("CodeSubDirectories: {0}", _ configSection.CodeSubDirectories.Count) ' Display Compilers property. Console.WriteLine("Compilers: {0}", _ configSection.Compilers.Count) ' Display Debug property. Console.WriteLine("Debug: {0}", _ configSection.Debug) ' Set Debug property. configSection.Debug = False ' Display DefaultLanguage property. Console.WriteLine("DefaultLanguage: {0}", _ configSection.DefaultLanguage) ' Set DefaultLanguage property. configSection.DefaultLanguage = "vb" ' Display Explicit property. Console.WriteLine("Explicit: {0}", _ configSection.Explicit) ' Set Explicit property. configSection.Explicit = True ' Display ExpressionBuilders collection count. Console.WriteLine("ExpressionBuilders Count: {0}", _ configSection.ExpressionBuilders.Count) ' Display MaxBatchGeneratedFileSize property. Console.WriteLine("MaxBatchGeneratedFileSize: {0}", _ configSection.MaxBatchGeneratedFileSize) ' Set MaxBatchGeneratedFileSize property. configSection.MaxBatchGeneratedFileSize = 1000 ' Display MaxBatchSize property. Console.WriteLine("MaxBatchSize: {0}", _ configSection.MaxBatchSize) ' Set MaxBatchSize property. configSection.MaxBatchSize = 1000 ' Display NumRecompilesBeforeAppRestart property. Console.WriteLine("NumRecompilesBeforeAppRestart: {0}", _ configSection.NumRecompilesBeforeAppRestart) ' Set NumRecompilesBeforeAppRestart property. configSection.NumRecompilesBeforeAppRestart = 15 ' Display Strict property. Console.WriteLine("Strict: {0}", _ configSection.Strict) ' Set Strict property. configSection.Strict = False ' Display TempDirectory property. Console.WriteLine("TempDirectory: {0}", _ configSection.TempDirectory) ' Set TempDirectory property. configSection.TempDirectory = "myTempDirectory" ' Display UrlLinePragmas property. Console.WriteLine("UrlLinePragmas: {0}", _ configSection.UrlLinePragmas) ' Set UrlLinePragmas property. configSection.UrlLinePragmas = False ' ExpressionBuilders Collection Dim i = 1 Dim j = 1 For Each expressionBuilder As ExpressionBuilder In configSection.ExpressionBuilders() Console.WriteLine() Console.WriteLine("ExpressionBuilder {0} Details:", i) Console.WriteLine("Type: {0}", expressionBuilder.ElementInformation.Type) Console.WriteLine("Source: {0}", expressionBuilder.ElementInformation.Source) Console.WriteLine("LineNumber: {0}", expressionBuilder.ElementInformation.LineNumber) Console.WriteLine("Properties Count: {0}", expressionBuilder.ElementInformation.Properties.Count) j = 1 For Each propertyItem As PropertyInformation In expressionBuilder.ElementInformation.Properties Console.WriteLine("Property {0} Name: {1}", j, propertyItem.Name) Console.WriteLine("Property {0} Value: {1}", j, propertyItem.Value) j = j + 1 Next i = i + 1 Next ' Update if not locked. If Not configSection.SectionInformation.IsLocked Then config.Save() Console.WriteLine("** Configuration updated.") Else Console.WriteLine("** Could not update, section is locked.") End If Catch e As Exception ' Unknown error. Console.WriteLine(e.ToString()) End Try ' Display and wait Console.ReadLine() End Sub End Class End Namespace
#region Using directives using System; using System.Collections.Generic; using System.Text; using System.Configuration; using System.Web; using System.Web.Configuration; #endregion namespace Samples.Aspnet.SystemWebConfiguration { class UsingCompilationSection { static void Main(string[] args) { try { // Set the path of the config file. string configPath = ""; // Get the Web application configuration object. Configuration config = WebConfigurationManager.OpenWebConfiguration(configPath); // Get the section related object. CompilationSection configSection = (CompilationSection)config.GetSection("system.web/compilation"); // Display title and info. Console.WriteLine("ASP.NET Configuration Info"); Console.WriteLine(); // Display Config details. Console.WriteLine("File Path: {0}", config.FilePath); Console.WriteLine("Section Path: {0}", configSection.SectionInformation.Name); // Display Assemblies collection count. Console.WriteLine("Assemblies Count: {0}", configSection.Assemblies.Count); // Display AssemblyPostProcessorType property. Console.WriteLine("AssemblyPostProcessorType: {0}", configSection.AssemblyPostProcessorType); // Display Batch property. Console.WriteLine("Batch: {0}", configSection.Batch); // Set Batch property. configSection.Batch = true; // Display BatchTimeout property. Console.WriteLine("BatchTimeout: {0}", configSection.BatchTimeout); // Set BatchTimeout property. configSection.BatchTimeout = TimeSpan.FromMinutes(15); // Display BuildProviders collection count. Console.WriteLine("BuildProviders collection Count: {0}", configSection.BuildProviders.Count); // Display CodeSubDirectories collection count. Console.WriteLine("CodeSubDirectories Count: {0}", configSection.CodeSubDirectories.Count); // Display Compilers collection count. Console.WriteLine("Compilers Count: {0}", configSection.Compilers.Count); // Display Debug property. Console.WriteLine("Debug: {0}", configSection.Debug); // Set Debug property. configSection.Debug = false; // Display DefaultLanguage property. Console.WriteLine("DefaultLanguage: {0}", configSection.DefaultLanguage); // Set DefaultLanguage property. configSection.DefaultLanguage = "vb"; // Display Explicit property. Console.WriteLine("Explicit: {0}", configSection.Explicit); // Set Explicit property. configSection.Explicit = true; // Display ExpressionBuilders collection count. Console.WriteLine("ExpressionBuilders Count: {0}", configSection.ExpressionBuilders.Count); // Display MaxBatchGeneratedFileSize property. Console.WriteLine("MaxBatchGeneratedFileSize: {0}", configSection.MaxBatchGeneratedFileSize); // Set MaxBatchGeneratedFileSize property. configSection.MaxBatchGeneratedFileSize = 1000; // Display MaxBatchSize property. Console.WriteLine("MaxBatchSize: {0}", configSection.MaxBatchSize); // Set MaxBatchSize property. configSection.MaxBatchSize = 1000; // Display NumRecompilesBeforeAppRestart property. Console.WriteLine("NumRecompilesBeforeAppRestart: {0}", configSection.NumRecompilesBeforeAppRestart); // Set NumRecompilesBeforeAppRestart property. configSection.NumRecompilesBeforeAppRestart = 15; // Display Strict property. Console.WriteLine("Strict: {0}", configSection.Strict); // Set Strict property. configSection.Strict = false; // Display TempDirectory property. Console.WriteLine("TempDirectory: {0}", configSection.TempDirectory); // Set TempDirectory property. configSection.TempDirectory = "myTempDirectory"; // Display UrlLinePragmas property. Console.WriteLine("UrlLinePragmas: {0}", configSection.UrlLinePragmas); // Set UrlLinePragmas property. configSection.UrlLinePragmas = false; // ExpressionBuilders Collection int i = 1; int j = 1; foreach (ExpressionBuilder expressionBuilder in configSection.ExpressionBuilders) { Console.WriteLine(); Console.WriteLine("ExpressionBuilder {0} Details:", i); Console.WriteLine("Type: {0}", expressionBuilder.ElementInformation.Type); Console.WriteLine("Source: {0}", expressionBuilder.ElementInformation.Source); Console.WriteLine("LineNumber: {0}", expressionBuilder.ElementInformation.LineNumber); Console.WriteLine("Properties Count: {0}", expressionBuilder.ElementInformation.Properties.Count); j = 1; foreach (PropertyInformation propertyItem in expressionBuilder.ElementInformation.Properties) { Console.WriteLine("Property {0} Name: {1}", j, propertyItem.Name); Console.WriteLine("Property {0} Value: {1}", j, propertyItem.Value); j++; } i++; } // Update if not locked. if (!configSection.SectionInformation.IsLocked) { config.Save(); Console.WriteLine("** Configuration updated."); } else { Console.WriteLine("** Could not update, section is locked."); } } catch (Exception e) { // Unknown error. Console.WriteLine(e.ToString()); } // Display and wait Console.ReadLine(); } } }

System.Configuration.ConfigurationElement
System.Configuration.ConfigurationSection
System.Web.Configuration.CompilationSection


Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- CompilationSection クラスのページへのリンク