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.
Not
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.
Not
.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 |
|
Yapılandırma üyesi |
|
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ı)
Kavramlar
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 Web site Administation