compilation Ögesi (ASP.NET Ayarlar Şeması)

ASP.NET'in uygulamaları derlemek için kullandığı tüm derleme ayarlarını yapılandırır.

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

Öznitelikler ve Öğeler

Öznitelikler, alt ve üst ögeler aşağıdaki bölümlerde açıklanmaktadır.

Öznitelikler

Öznitelik

Açıklama

assemblyPostProcessorType

İsteğe bağlı String özniteliği.

Derleyici son işlemcisine başvurularak derleyici için son işlemci derleme adımı belirtir. "derleyici son işlemcisi, derleyici" biçimini kullanın. derleyici son işlemcisi IAssemblyPostProcessor arabirimini uygulamalıdır. Son işlemcinin bu yöntemini kullanmak, derleme sırasında dağıtım modu belirtirken geçersiz kılabileceğiniz hata ayıklama işlemine zorlar.

Bu öznitelik .NET Framework sürüm 2.0'da yenidir.

Varsayılan değer, boş dizedir.

batch

İsteğe bağlı Boolean özniteliği.

Toplu iş oluşturma özelliğinin desteklenip desteklenmediğini gösterir.

True ise, bir dosyaya ilk kez eriştiğinizde gerekli derleme nedeniyle oluşan gecikmeyi ortadan kaldırır. Bu özniteliği ayarlandığında True, asp.net bin dosyaları bile daha uzun bir gecikme ilk kez neden bir toplu iş modunda derlenmemiş dosyaları derlenmiş tüm. Ancak, bu ilk gecikmeden sonra derleme gecikmesi dosyanın sonraki erişimlerinde giderilir.

Varsayılan, True değeridir.

batchTimeout

İsteğe bağlı TimeSpan özniteliği.

Toplu derleme işlemi için saniye cinsinden zaman aşımı değerini belirtir. Derleme işlemi zaman aşımı süresi içinde tamamlanamazsa, derleyici geçerli sayfa için tekli derleme moduna döner.

Varsayılan değer "900"dür (15 dakika).

debug

İsteğe bağlı Boolean özniteliği.

Perakende ikili dosyaların yerine hata ayıklama ikili dosyalarının derlenip derlenmeyeceğini belirtir.

Varsayılan, False değeridir.

defaultLanguage

İsteğe bağlı String özniteliği.

Dinamik derleme dosyalarında kullanılacak, "C#" veya "PERL" gibi, varsayılan programlama dilini belirtir. Dil adları system.codeDom bölümünün compilers ögesi veya bu ögenin (kullanım dışı) compilers alt ögesi kullanılarak tanımlanır.

Varsayılan, "vb" değeridir.

explicit

İsteğe bağlı Boolean özniteliği.

Microsoft Visual Basic explicit derleme seçeneğinin ayarlanıp ayarlanmayacağını belirtir. True ise, tüm değişkenler Dim, Private, Public veya ReDim ifadesi kullanılarak bildirilmelidir.

Varsayılan, True değeridir.

maxBatchGeneratedFileSize

İsteğe bağlı Int32 özniteliği.

Her toplu derleme işlemi başına oluşturulan kaynak dosyaların en büyük birleştirilmiş boyutunu (KB cinsinden) belirtir. Genel olarak, daha az bit gerektiği zaman belleğe çok büyük bir derleyici yüklemek uygun değildir. Bu sınır, derleyicilerin boyutunun makul sınırlar içinde olduğundan emin olur, böylece uygulama aşırı yükleme sistemi olmadan toplu mekanizmanın olanaklarından yararlanır. Bu, maxBatchSize'a benzerdir.

Varsayılan, 1000 değeridir.

maxBatchSize

İsteğe bağlı Int32 özniteliği.

Toplu derleme işlemi başına en çok sayfa sayısını belirtir.

Varsayılan, 1000 değeridir.

numRecompilesBeforeAppRestart

İsteğe bağlı Int32 özniteliği.

Uygulama yeniden başlatılmadan önce meydana gelebilen kaynakların dinamik olarak yeniden derlenme sayısını gösterir. Bu öznitelik genel düzeyde ve uygulama düzeyinde desteklenir, ama dizin düzeyinde desteklenmez.

NotNot
ASP.NET, derlemenin geçersiz olduğu ve silinemediği her zaman NumRecompilesBeforeAppRestart özelliğini artırır.

Varsayılan, 15 değeridir.

optimizeCompilations

İsteğe bağlı Boolean özniteliği.

Üst düzey bir dosya değiştiyse dinamik derlemenin tüm siteyi derleyip derlemeyeceğini belirtir. Üst düzey dosyalar Global.asax dosyası ve Bin ve App_Code klasörlerindeki tüm dosyaları içerir. True ise, yalnızca değiştirilen dosyalar yeniden derlenir.

Varsayılan, False değeridir.

Daha fazla bilgi için bkz. ASP.NET Dinamik derleme anlama.

strict

İsteğe bağlı Boolean özniteliği.

Visual Basic strict derleme seçeneğinin etkinleştirilip etkinleştirilmeyeceğini belirtir.

Varsayılan, False değeridir.

targetFramework

İsteğe bağlı String özniteliği.

Web sitesinin hedeflediği .NET Framework sürümünü belirtir.

Varsayılan, Null değeridir.

Bu öznitelik atlanırsa, hedef sürüm Web.config dosyasındaki diğer ayarlar ve Web sitesi ile ilişkili IIS uygulama havuzu tarafından belirlenir. Daha fazla bilgi için, bkz. CompilationSection.TargetFramework ve .NET çerçeve Multi-hedefleyen ASP.NET Web Projeler için.

tempDirectory

İsteğe bağlı String özniteliği.

Derleme işlemi sırasında geçici dosyaları depolamak için kullanılacak dizini belirtir.

Varsayılan değer, boş dizedir ("").

Boş bir dize olması durumunda ve geçerli işlem gerekli erişim izinlerine sahipse, dosyalar %FrameworkInstallLocation%\Temporary ASP.NET Files dizini içinde depolanır.

Yalnızca yüksek güven izinleri olan işlemlerin %FrameworkInstallLocation%\ Temporary ASP.NET Files dizinine erişebildiğini unutmayın.

urlLinePragmas

İsteğe bağlı Boolean özniteliği.

Derleyicinin fiziksel yollar yerine URL'leri kullanması gerekip gerekmediğini belirtir.

Varsayılan, False değeridir.

Alt Öğeler

Öge

Açıklama

assemblies

Bir ASP.NET kaynağı derlenirken kullanılan birleştirici adları koleksiyonunu tanımlar.

buildProviders

Özel kaynak dosyalarını derlemek için kullanılan yapı sağlayıcıları koleksiyonunu tanımlar. Daha fazla bilgi için, BuildProvider sınıfına bakın.

codeSubDirectories

Çalışma zamanında derlenen dosyaları içeren sıralı alt dizin koleksiyonunu tanımlar.

compilers

Derleyici seçenekleri koleksiyonu tanımlar.

NotNot
.NET Framework sürüm 2.0 ve sonraki sürümlerinde, bu öge system.codeDom bölümünün compilers ögesi yararına kullanım dışı olur.Ancak, compilation ögesinin compilers alt ögesini kullanmak hala geçerlidir ve system.codedom bölümünde bulunan compilers ögesini geçersiz kılar.

expressionBuilders

Derleme sırasında kullanılmak üzere kaynak dizeleri koleksiyonu belirtir. Kaynak dizeleri, önekleri ifade oluşturucular ile ilişkilendirir.

folderLevelBuildProviders

Belirli klasörlerdeki özel kaynak dosyalarını derlemek için kullanılan yapı sağlayıcıları koleksiyonunu tanımlar. Yapı sağlayıcıları dosya uzantılarına eşlenir ve belirtilen türdeki dosyalardan kod oluşturmak için kullanılır. Daha fazla bilgi için, FolderLevelBuildProvider sınıfına bakın.

Üst Öğeler

Öge

Açıklama

configuration

Ortak dil çalıştırma modülü ile .NET Framework uygulamaları tarafından kullanılan bütün yapılandırma dosyalarında yer alması gereken kök ögeyi belirtir.

system.web

Yapılandırma bölümündeki ASP.NET yapılandırma ayarları için kök öge belirtir ve ASP.NET Web uygulamalarının davranışlarını yapılandıran yapılandırma ögeleri içerir.

Açıklamalar

compilation ögesi ASP.NET'in uygulamaları derlemek için kullandığı tüm derleme ayarlarını yapılandırır.

.NET Framework sürüm 2.0'da, compilation ögesinin compilers alt ögesi system.codeDom bölümünün compilers ögesi yararına kullanım dışı olur. Ancak, compilation ögesinin compilers alt ögesini kullanmak hala geçerlidir ve system.codedom bölümünde bulunan compilers ögesini geçersiz kılar.

Varsayılan Yapılandırma

Aşağıdaki varsayılan compilation ögesi Machine.config dosyası veya kök Web.config dosyasında tam olarak yapılandırılmamıştır. Ancak bu, uygulamanın varsayılan yapılandırmasıdır. Ögeler, kök Web.config dosyasındaki assemblies, buildProviders ve expressionBuilders koleksiyonuna eklenir.

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

.NET Framework sürüm 1.1'de, aşağıdaki varsayılan derleme ögesi Machine.config dosyası içinde yapılandırılmıştır. Benzer ayarlar sürüm numaraları dışında .NET Framework sürüm 1.0'da bulunmaktadır.

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

Örnek

Aşağıdaki kod örneğinde bir uygulamanın derleme ayarlarının nasıl yapılandırılması gerektiği gösterilmiştir.

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

Öğe Bilgileri

Yapılandırma bölümü işleyicisi

CompilationSection

Yapılandırma üyesi

Compilation

Yapılandırılabilir konumlar

Machine.config

Kök düzeyinde Web.config

Uygulama düzeyinde Web.config

Sanal veya fiziksel dizin düzeyinde Web.config

Gereksinimler

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

.NET Framework 1.0, 1.1, 2.0

Visual Studio 2003 veya Visual Studio 2005

Ayrıca bkz.

Görevler

Nasıl Yapılır: Özel dizin Yer Ayarlar kullanarak yapılandırma

Nasıl Yapılır: ASP.NET Yapılandırması kilitlemek Ayarlar

Başvuru

system.web Ögesi (ASP.NET Ayarlar Şeması)

compilation için assemblies Ögesi (ASP.NET Ayarlar Şeması)

compilation için buildProviders Ögesi (ASP.NET Ayarlar Şeması)

compilation için codeSubDirectories Ögesi (ASP.NET Ayarlar Şeması)

compilation için compilers Ögesi (ASP.NET Ayarlar Şeması)

compilation için expressionBuilders Ögesi (ASP.NET Ayarlar Şeması)

configuration Ögesi (Genel Ayarlar Şeması)

System.Configuration

System.Web.Configuration

CompilationSection

Compilation

Kavramlar

ASP.NET derleme genel bakış

ASP.NET Web sayfa sözdizimi genel bakış

ASP.NET Yapılandırması dosyası hiyerarşi ve Kalıtım

ASP.NET Yapılandırması güvenliğini sağlama

ASP.NET Yapılandırması senaryoları

.NET çerçeve Multi-hedefleyen ASP.NET Web Projeler için

Diğer Kaynaklar

Genel Yapılandırma Ayarları (ASP.NET)

ASP.NET Yapılandırma Ayarları

ASP.NET Web site Administation

ASP.NET Yapılandırması dosyalarının

ASP.NET Yapılandırması API