<compiler> 元素

指定語言提供者的編譯器組態屬性。

<configuration>
  <system.codedom>
    <compilers>
      <compiler>

語法

<compiler
  language="languageName[;...;...]"
  extension="fileExtension[;...;...]"
  type="typeName, assemblyName"
  warningLevel="number"
  compilerOptions="option1 option2"
/>

屬性和項目

下列章節說明屬性、子元素和父元素。

屬性

屬性 描述
compilerOptions 選用屬性。

指定編譯的其他編譯程式特定自變數。 屬性的值 compilerOptions 通常會列在編譯程式的編譯程式選項主題中。
extension 必要的 屬性。

提供語言提供者來源檔案所使用的擴展名分號分隔清單。 例如,“.cs”。
language 必要的 屬性。

提供語言提供者所支援之語言名稱的分號分隔清單。 例如,「c#;Cs;csharp“。。
type 必要的 屬性。

指定語言提供者的類型名稱,包括包含提供者實作的元件名稱。 類型名稱必須符合指定完整類型名稱中所定義的需求。
warningLevel 選用屬性。

指定預設編譯程式警告層級;會決定語言提供者將編譯警告視為錯誤的層級。

子元素

元素 描述
<providerOption> 元素 指定語言提供者的編譯程式版本屬性。

父項目

元素 描述
設定>元素 通用語言執行平台和 .NET Framework 應用程式所使用之每個組態檔中的根項目。
<system.codedom> 元素 指定可用語言提供者的編譯器組態設定。
<compilers> 元素 編譯程式組態專案的容器;包含零個或多個 <compiler> 專案。

備註

每個 <compiler> 元素都會指定特定語言提供者的編譯程式組態屬性。 提供者會 System.CodeDom.Compiler.CodeDomProvider 擴充特定語言的類別; <compiler> 元素會定義語言提供者的編譯程式和程式代碼產生器設定。

.NET Framework 會在電腦組態檔 (Machine.config) 中定義初始編譯器設定。 開發人員和編譯器廠商可以為新的 CodeDomProvider 實作新增組態設定。 使用 CodeDomProvider.GetAllCompilerInfo 方法,以程式設計方式列舉電腦上的語言提供者和編譯器組態設定。

應用程式或 Web 組態檔中的編譯程式元素可以補充或覆寫計算機組態檔中的設定。 如果針對相同語言名稱或相同的擴展名設定多個提供者實作,則最後一個比對組態會覆寫該語言名稱或擴展名的任何先前設定提供者。

組態檔

此元素可用於計算機組態檔和應用程式組態檔。

範例

下列範例說明一般編譯程式組態專案:

<configuration>
  <system.codedom>
    <compilers>
      <!-- zero or more compiler elements -->
      <compiler
        language="c#;cs;csharp"
        extension=".cs"
        type="Microsoft.CSharp.CSharpCodeProvider, System,
          Version=2.0.3600.0, Culture=neutral,
          PublicKeyToken=b77a5c561934e089"
        compilerOptions="/optimize"
        warningLevel="1" />
    </compilers>
  </system.codedom>
</configuration>

另請參閱