<add> Element for <sharedListeners>

將接聽項新增至 sharedListeners 集合。 sharedListeners是任何<來源>或<追蹤>都可以參考的接聽程式集合。 根據預設,集合中的 sharedListeners 接聽程式不會放在集合中 Listeners 。 它們必須依名稱新增至<來源>或<追蹤。> 無法在運行時間在程式代碼中取得集合中的 sharedListeners 接聽程式。

<configuration>
  <system.diagnostics>
    <sharedListeners>
      <add>

語法

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

屬性和項目

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

屬性

屬性 描述
name 必要屬性。

指定用來將共用接聽程式新增至 Listeners 集合的接聽程序名稱。
type 必要的 屬性。

指定接聽程式的型別。 您必須使用符合指定完整類型名稱中所指定需求的字串。
initializeData 選用屬性。

傳遞至指定類別之建構函式的字串。
traceOutputOptions 選用屬性。

一或多個 TraceOptions 列舉成員的字串表示,表示要寫入追蹤輸出的數據。 多個專案會以逗號分隔。 預設值為 「None」。。

子元素

元素 描述
<filter> 將篩選新增至 sharedListeners 集合中的接聽項。

父項目

元素 描述
configuration 通用語言執行平台和 .NET Framework 應用程式所使用之每個組態檔中的根項目。
system.diagnostics 指定用於收集、儲存及路由傳送訊息的追蹤接聽項,以及設定追蹤參數的層級。
sharedListeners 任何來源或追蹤專案都可以參考的接聽程式集合。

備註

隨附於 .NET Framework 的接聽程序類別衍生自 TraceListener 類別。 屬性的值 name 是用來將共用接聽程式加入至 Listeners 追蹤或追蹤來源的集合。 屬性的值 initializeData 取決於您建立的接聽程序類型。 並非所有追蹤接聽程式都需要您指定 initializeData

注意

當您使用 initializeData 屬性時,可能會收到編譯程式警告「未宣告 』initializeData' 屬性」。因為組態設定會根據無法辨識initializeData屬性的抽象基類TraceListener進行驗證,因此會發生這個警告。 一般而言,您可以忽略具有採用參數之建構函式的追蹤接聽程序實作的這個警告。

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

追蹤接聽程序類別 initializeData 屬性值
ConsoleTraceListener useErrorStream 構函式 ConsoleTraceListener 的值。 將 initializeData 屬性設定為 「true以將追蹤和偵錯輸出寫入標準錯誤數據流;將它設定為」false「 以寫入標準輸出數據流。
DelimitedListTraceListener 寫入的檔名 DelimitedListTraceListener
System.Diagnostics.EventLogTraceListener 現有事件記錄檔來源的名稱。
System.Diagnostics.EventSchemaTraceListener 寫入的檔名 EventSchemaTraceListener
System.Diagnostics.TextWriterTraceListener 寫入的檔名 TextWriterTraceListener
XmlWriterTraceListener 寫入的檔名 XmlWriterTraceListener

組態檔

這個元素可用於計算機組態檔 (Machine.config) 和應用程式組態檔。

範例

下列範例示範如何使用 <add> 元素將 加入 TextWriterTraceListenertextListenersharedListeners 集合。 textListener 會依名稱新增至 Listeners 追蹤來源 TraceSourceApp的集合。 接 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>

另請參閱