调试C#中的命令行参数

时间:2009-08-28 15:23:46

标签: c# debugging command-line

我为VS 2008 C#中的库构建了一个单元测试项目。该库将对命令行参数作出反应。我已经设置了单元测试的属性 - >调试 - >使用默认参数启动选项以触发目标库中的特定反应。我的问题是:

1)当库代码执行Environment.GetCommandLineArgs()时,它没有看到我设置的任何默认参数。我甚至将单元测试项目中的默认参数复制到库项目的属性中,但没有效果。我不做什么(右)?

2)是否有一种设置命令行参数的编程方法?我希望各种测试能够设置args并观察库的行为。

谢谢你, 吉姆

2 个答案:

答案 0 :(得分:2)

它没有直接回答你的问题,但我建议你不要在库中使用命令行参数。命令行参数应该由可执行文件解析,然后将适当的参数传递给库。在单元测试的情况下,您可以简单地传递测试参数。考虑在GUI应用程序中使用库,其中用户在表单中输入参数而不是命令行参数,或者以两种不同方式使用库两次的程序。

答案 1 :(得分:2)

发现问题。 ReSharper附加组件正在运行其TaskRunner.exe以执行单元测试。调用TaskRunner时的命令行不会考虑调试设置。 JetBrains(制造商)现在意识到这个问题。