ConsoleApplication发送给Main()的参数

本文关键字:参数 Main ConsoleApplication | 更新日期: 2023-09-27 18:15:52

我尝试将Console Applicationclass Program转换为常规类,以便将其整合到Windows Application项目中。

我想调用void Main方法。我应该发送什么参数?

In Class Program:

public static void Main(string[] args)

在另一个类中:

Program.Main(?);

ConsoleApplication发送给Main()的参数

如果您想要实现的是将Windows应用程序可执行文件启动时传递的参数传递给Program.Main(),您可以这样做:

Program.Main(Environment.GetCommandLineArgs());

然而,这是一个坏主意,保持你的方法为"主要",因为你最终会有2个主要方法在你的Windows应用程序(一个由Visual Studio创建,和你的)。

我同意其他人的看法,我看不出有什么问题…

无论如何,args字符串数组包含程序集启动时给定的args。例如:
"C:'myApp.exe arg1 arg2 arg3"

第一个是调用的可执行文件,然后是arg1, arg2和arg3。(一个大小为4的数组).

如果您想通过CLI调用Main,只需执行以下操作:

Programe.Main(new string[] {String.Empty, "arg1", "arg2", "arg3"});

之后,它将始终取决于您在CLI应用程序中使用参数的方式。

一个好主意是重构你的应用程序并使用Program。Main作为CLI入口点,而不是"应用程序"入口点。因此,您将能够对相同的逻辑使用多个入口点。