我继承了几个控制台应用程序的维护,这些应用程序自然是使用static void Main(string[] args)
. 但是,代码忽略了args
数组,而是从System.Environment.CommandLine
.
这里有功能差异吗?
内容看起来一样。如果有的话,我会怀疑调用会对性能造成一分钟的打击System.Environment.CommandLine
(但还不足以让我担心或关心到足以衡量)。
更新:我怀疑它System.Environment.CommandLine
应该包含可执行路径,但我没有看到它......因为我找错了地方。代码 ALSO 有string[] arrCmdLine = System.Environment.GetCommandLineArgs();
....System.Environment.CommandLine.ToLower()
检查是否存在“调试”,而所有其他参数都从中提取GetCommandLineArgs()
,我在精神上将两者混为一谈,而我正在“为什么不只是使用args[]
?”
多年来,我一直在为解析命令行参数的最佳方式而苦恼,而一直以来都是“将它们按正确的顺序放置!” [jk]