共用方式為


<sharedListeners> 的 <add> 項目

將接聽項加入至 sharedListeners 集合。 sharedListeners 是任何 <source> 項目<trace> 項目 可以參考之接聽項的集合。 根據預設,sharedListeners 集合中的接聽項不會放置到 Listeners 集合中, 這些接聽項必須依據名稱加入到 <source> 項目<trace> 項目中, 您無法在執行階段於程式碼中取得 sharedListeners 集合中的接聽項。

<add name="name" 
  type="TraceListenerClassName, Version, Culture, PublicKeyToken"
  initializeData="data"/>

屬性和項目

下列各節將說明屬性、子項目和父項目。

屬性

屬性

說明

name

必要屬性。

指定用來將共用接聽項加入到 Listeners 集合中的接聽項名稱。

type

必要屬性。

指定接聽程式的類型。 您必須使用符合 指定完整的型別名稱 中指定之要求的字串。

initializeData

選擇性屬性。

傳遞至指定類別的建構函式的字串。

子項目

項目

描述

<sharedListeners> 適用之 <add> 的 <filter> 項目

將篩選條件加入到 sharedListeners 集合中的接聽項。

父項目

項目

描述

configuration

Common Language Runtime 和 .NET Framework 應用程式所使用之每個組態檔中的根項目。

system.diagnostics

指定收集、存放和傳送訊息的追蹤接聽程式,以及設定追蹤切換控制的層級。

sharedListeners

任何來源或追蹤項目可以參考的接聽項之集合。

備註

.NET Framework 隨附的接聽項類別是衍生自 TraceListener 類別。 name 屬性的值是用來將共用接聽項加入到追蹤或追蹤來源的 Listeners 集合中。 initializeData 屬性的值需視您建立的接聽項之型別而定, 並非所有的追蹤接聽項都會要求您指定 initializeData。

注意事項注意事項

當您使用 initializeData 屬性時,可能會收到下列編譯器警告訊息:「'initializeData' 屬性未宣告」。這項警告出現的原因是驗證組態設定時其對象是基底型別 TraceListener,但此基底型別無法識別 initializeData 屬性。如果追蹤接聽程式實作中包含採用參數的建構函式,您通常可以忽略這項警告。

下表顯示 .NET Framework 隨附的追蹤接聽項,並描述其 initializeData 屬性的值。

追蹤接聽程式類別

initializeData 屬性值

ConsoleTraceListener

ConsoleTraceListener 建構函式的 useErrorStream 值。 將 initializeData 屬性設定為 "true",即可將追蹤和偵錯輸出寫入到標準錯誤資料流中;將它設定為 "false",即可寫入到標準輸出資料流中。

DelimitedListTraceListener

DelimitedListTraceListener 要寫入的檔案名稱。

System.Diagnostics.EventLogTraceListener

現有事件記錄檔來源的名稱。

System.Diagnostics.EventSchemaTraceListener

EventSchemaTraceListener 寫入的檔案名稱。

System.Diagnostics.TextWriterTraceListener

TextWriterTraceListener 寫入的檔案名稱。

XmlWriterTraceListener

XmlWriterTraceListener 寫入的檔案名稱。

組態檔

這個項目可以用於電腦組態檔 (Machine.config) 和應用程式組態檔。

範例

下列範例示範如何使用 <add> 項目將 TextWriterTraceListener textListener 加入至 sharedListeners 集合。 textListener 會依據名稱加入到追蹤來源 TraceSourceApp 的 Listeners 集合中。 textListener 接聽項會將追蹤輸出寫入到 myListener.log 檔案中。

<configuration>
  <system.diagnostics>
    <sources>
      <source name="TraceSourceApp" switchName="sourceSwitch" 
        switchType="System.Diagnostics.SourceSwitch">
        <listeners>
          <add name="console" 
            type="System.Diagnostics.ConsoleTraceListener"/>
          <add name="textListener"/>
          <remove name="Default"/>
        </listeners>
      </source>
    </sources>
    <sharedListeners>
      <add name="textListener" 
        type="System.Diagnostics.TextWriterTraceListener" 
        initializeData="myListener.log"/>
    </sharedListeners>
    <switches>
      <add name="sourceSwitch" value="Warning"/>
    </switches>
  </system.diagnostics>
</configuration> 

請參閱

參考

追蹤和偵錯設定結構描述

TraceSource

TraceListener

概念

追蹤接聽項