类库中常见的“Debug”函数

时间:2012-11-26 13:44:10

标签: c#

我在项目中使用了几个类库,其中一个是典型的“project.common.dll”库,其中包含一些常见的帮助函数。其中一个函数是一个创建调试输出的调试函数。 现在我想通过使用用户级属性(应用程序设置)来启用/禁用调试输出。如何引用此类库中主应用程序的program.cs中定义的变量?

更新:谢谢大家。我可能会在我的基本应用程序中创建一个静态方法来执行检查(调试与否),然后在公共库中调用Debug函数。

3 个答案:

答案 0 :(得分:4)

你不能。

您需要做的是在类库中拥有属性,当您在主应用程序中创建它的实例时,请传递用户设置:

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

或设置参数(如果它是静态类:

StaticDebug.Output = this.Output;

答案 1 :(得分:2)

您可以使用ConditionalAtrribute

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

这种方式在调试模式下构建时,会调用该方法;在发布模式下没有。

答案 2 :(得分:0)

在Debug类的构造函数上使用参数(如果类是静态的,则使用静态构造函数)。