Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/289.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 当项目中有多个主方法时,如何从开发人员控制台设置类的启动对象_C#_.net_Console Application - Fatal编程技术网

C# 当项目中有多个主方法时,如何从开发人员控制台设置类的启动对象

C# 当项目中有多个主方法时,如何从开发人员控制台设置类的启动对象,c#,.net,console-application,C#,.net,Console Application,这将是c#初学者提出的问题。我有一个控制台应用程序,有5个类,每个类中都有一个main方法,在从开发人员控制台执行此应用程序时,是否有方法设置启动对象(main(string[]args))?当我在应用程序的属性中设置启动对象时,它可以正常工作,但我想从命令控制台设置它 请帮助我。您可以使用编译器选项使用特定的main函数进行编译,但在程序启动时,您似乎希望在编译后选择要使用的main(?) 我不确定是否要在编译后使用多个main,为什么不创建一个main,直接指向您想要使用的任何类/对象?如果

这将是c#初学者提出的问题。我有一个控制台应用程序,有5个类,每个类中都有一个main方法,在从开发人员控制台执行此应用程序时,是否有方法设置启动对象(main(string[]args))?当我在应用程序的属性中设置启动对象时,它可以正常工作,但我想从命令控制台设置它


请帮助我。

您可以使用编译器选项使用特定的main函数进行编译,但在程序启动时,您似乎希望在编译后选择要使用的main(?)


我不确定是否要在编译后使用多个main,为什么不创建一个main,直接指向您想要使用的任何类/对象?

如果我理解正确,开发人员控制台指的是Windows的命令提示符,您可以执行以下操作:

在Program.cs上:

  • 内部
    void main
    添加:

    switch (args[0])  {
      case "method1":
        new ClassWithMainMethod1().Main();
        break;
      case "method2":
        new ClassWithMainMethod2().Main();
        break;
      case "method3":
        new ClassWithMainMethod3().Main();
        break;
      case "method4":
        new ClassWithMainMethod4().Main();
        break;
      case "method5":
        new ClassWithMainMethod5().Main();
        break;
      default:
        break;
    }
    

这样,您可以使用命令提示符启动不同的主要方法,如
program.exe methodX
(methodX是您在
开关上指定的名称之一)

您使用的是visual studio吗?以下是VisualStudio15的说明。希望这有帮助。我想从开发人员控制台设置它,而不是从visual Studio设置它。如果这非常适合您,为什么不将其标记为答案?