1

プロジェクト内でいくつかのクラスライブラリを使用していますが、そのうちの1つは、いくつかの一般的なヘルパー関数を含む典型的な「project.common.dll」ライブラリです。これらの関数の1つは、デバッグ出力を作成するデバッグ関数です。次に、ユーザーレベルのプロパティ(アプリケーション設定)を使用して、デバッグ出力を有効/無効にします。このクラスライブラリ内のメインアプリケーションのprogram.csで定義されている変数を参照するにはどうすればよいですか?

更新:ありがとうございました。おそらく、ベースアプリケーションに静的メソッドを作成して(デバッグするかどうかに関係なく)チェックを実行してから、共通ライブラリのDebug関数を呼び出します。

4

3 に答える 3

4

できません。

あなたがする必要があるのは、クラスライブラリ自体にプロパティを持ち、メインアプリケーションでそのインスタンスを作成するときにユーザー設定を渡すことです:

var debug = new DebugInstance { Output = this.Output };

または、静的クラスの場合はパラメーターを設定します。

StaticDebug.Output = this.Output;
于 2012-11-26T13:47:53.127 に答える
2

ConditionalAtrributeを使用できます。

[Conditional("DEBUG")]
public static void WriteDebugInfo()
{
    Trace.WriteLine("what ever...")
}

このようにデバッグ モードでビルドすると、メソッドが呼び出されます。リリースモードではありません。

于 2012-11-26T13:51:23.430 に答える