-1

我有一个应用程序,用户可以从他的许多参数开始。如果我没记错的话,我想我可以在我的应用程序中获取这些执行参数。

该应用程序是控制台应用程序。

试图谷歌它,但没有找到如何。

4

5 回答 5

6

可以让他们使用Environment.CommandLineor Environment.GetCommandLineArgs,但我强烈建议不要这样做。这将使您的代码更难测试。相反,将启动时的命令行参数解析为语义更有意义的形式,然后将相关选项传播到任何需要它的代码,可能通过依赖注入框架。

这样一来,您最终将更清楚哪些代码片段依赖于哪些选项,并且您还可以在不使用任何全局状态的情况下为这些类编写单元测试。您所有的命令行解析和验证也将在一个地方。

于 2012-08-02T12:36:32.850 回答
4

你可以使用Environment.GetCommandLineArgs()

于 2012-08-02T12:36:22.973 回答
2

您可以使用Environment.CommandLine,它为您提供命令行参数的直字符串,或者您可以使用Environment.GetCommandLineArgs(),它为您提供参数数组。请注意,数组中的第一个元素将是应用程序的名称。

于 2012-08-02T12:37:19.403 回答
2

您可以将它们读入 main() 中的全局变量,然后在整个应用程序中使用它们。

于 2012-08-02T12:38:26.400 回答
2

Environment.CommandLineEnvironment.GetCommandLineArgs()

最后一个选项更可取,因为它会返回一个字符串数组,其中包含在命令行上传递的每个参数。请记住,第一个(索引 0)是可执行文件名

于 2012-08-02T12:38:53.343 回答