【发布时间】:2012-08-02 21:11:45
【问题描述】:
我有一个应用程序,用户可以从他的许多参数开始。 如果我没记错的话,我想我可以在我的应用程序中获取这些执行参数。
应用程序是控制台应用程序。
尝试谷歌搜索,但没有找到。
【问题讨论】:
标签: c# console-application command-line-arguments
我有一个应用程序,用户可以从他的许多参数开始。 如果我没记错的话,我想我可以在我的应用程序中获取这些执行参数。
应用程序是控制台应用程序。
尝试谷歌搜索,但没有找到。
【问题讨论】:
标签: c# console-application command-line-arguments
您可以使用Environment.CommandLine 或Environment.GetCommandLineArgs 获取它们,但我强烈建议不要这样做。这将使您的代码更难测试。相反,在启动时将命令行参数解析为语义更有意义的形式,然后将相关选项传播到任何需要它的代码,可能通过依赖注入框架。
这样,您最终会更清楚哪些代码片段依赖于哪些选项,并且您还可以在不使用任何全局状态的情况下为这些类编写单元测试。您的所有命令行解析和验证也将集中在一个地方。
【讨论】:
您可以使用Environment.GetCommandLineArgs()
【讨论】:
您可以使用Environment.CommandLine,它为您提供命令行参数的直字符串,也可以使用Environment.GetCommandLineArgs(),它为您提供参数数组。请注意,数组中的第一个元素将是应用程序的名称。
【讨论】:
您可以将它们读入 main() 中的全局变量,然后在整个应用程序中使用它们。
【讨论】:
Environment.CommandLine 和 Environment.GetCommandLineArgs()
最后一个选项更可取,因为它会返回一个字符串数组,其中包含在命令行上传递的每个参数。请记住,第一个(索引 0)是可执行文件名
【讨论】: