Switch クラス(BooleanSwitch クラス, TraceSwitch クラス)

前述した Switches を使用するクラスが、Switch クラスとその派生クラスである。
使用方法はドキュメントを読めばすぐにわかると思うが、これらのクラスは Switches から指定した要素の値を取り出すだけのクラスである。
System.Diagnostics/Switches 要素の中身に簡単にアクセスする手段として活用できるが、中傷クラスである Switch クラスの段階で整数値のみのサポートとなっているため、派生クラスを作成しても使いにくいことこの上ないように思える。
Switch クラスが value を文字列のまま保持しており、BooleanSwitch と TraceSwitch によってそれぞれの型に変換されている造りならよかったのだが…。

<Configuration>
  <System.Diagnostics>
    <Switches>
      <add name="switch1" value="1" />
      <add name="switch2" value="5" />
    </Switches>
  </System.Diagnostics>
</Configuration>