【问题标题】:How to pass parameters to Main() C# in visual studio for mac如何在 Visual Studio for Mac 中将参数传递给 Main() C#
【发布时间】:2017-01-21 03:43:42
【问题描述】:

我查看了其他版本的 Visual Studio 的不同资源,但我不清楚如何在这里使用 arg 调用 Main

using System;

namespace helloWorld
{
    class MainClass
    {
        public static void Main(string[] args)
        {
            if (args.Length > 0)
            {
                Console.WriteLine("Hello " + args[0]);
            }
            else
            { 
                Console.WriteLine("Hello World!");
            }
        }
    }
}

【问题讨论】:

  • 处于调试模式,还是一般?

标签: c#


【解决方案1】:

可以通过右键单击右侧窗格中的控制台应用程序,然后转到 Options > Run > Configurations > Default 为 Visual Studio for Mac 中的应用程序提供参数Arguments 文本字段。

【讨论】:

  • 是的,我可以在这里指定参数,但由于某种原因,Visual Studio 没有将值传递给应用程序
  • 也有这个问题。帮助我使用此解决方案中的参数创建新的运行配置。记得选择新配置(在主窗口的“播放”按钮旁边)
【解决方案2】:

出于某种原因,来自@JosephWoodward 的answer 不适合我。它看起来像一个 Visual Studio 错误,但我确实有一个解决方法;结果是您必须提供参数每次要启动应用程序。

  1. 从菜单中选择运行 -> 运行方式 -> 自定义配置 ...

  1. 在对话框中,输入参数:

  1. 如果您想调试而不是运行,则需要更改底部的运行操作:

【讨论】:

  • 这行得通,但很痛苦。我发现,如果我通过从项目上下文菜单中选择“开始调试项”来启动应用程序,我在项目配置中设置的参数就会被发送。不知道为什么工具栏按钮和运行菜单不这样做,我觉得这是问题的线索,但我想不出答案。
  • 也有这个问题。该解决方案有效,但太麻烦了。为我工作以创建带有参数的新运行配置(因为它应该可以工作)。记得选择新配置(在主窗口的“播放”按钮旁边)
【解决方案3】:

正如约瑟夫伍德沃德所说,您在参数字段中提供它们 Project Options > Run > Configurations > Your_configuration_here.

请注意,要成功将这些参数传递到 Main,需要重新构建项目 - 否则 args 将继续为空。

【讨论】:

  • 项目重建对我没有帮助,args 仍然是空的。在我创建新配置后工作。好奇怪……
【解决方案4】:

我知道这是一篇旧帖子,但我认为为那些希望使用终端的人提供答案会很好。

在 MacOS 上安装 Visual Studio:Community Edition 时,您将获得一套工具。 包括cscmono

因此,要运行如下所示的 C# 控制台程序,您需要同时使用这两种工具:

using System;

namespace helloWorld
{
    class Program
    {
        static void Main(string[] args)
        {
            string name = args[0];
            Console.WriteLine("Hello {0}", name);
        }
    }
}

然后通过运行 csc 编译 C# 项目:

$ csc Program.cs

如果没有错误,csc 将创建一个可执行文件 .exe,使用 mono 运行可执行文件并传递参数:

$ mono Program.exe Bob
Hello Bob

使用这两个工具,您可以编译和执行 C# 程序。

【讨论】:

    【解决方案5】:

    main 的参数将是命令行参数。 如果从 Visual Studio 中运行,您可以设置

    command line arguments 项目的“配置属性”中的属性。

    要从命令行运行它,只需调用带有参数的 exe 文件。

    Path/to/YourProg.exe arg1 arg2
    

    【讨论】:

    • 我能从你的回答中弄清楚,但我必须经历的是 Options 然后 Run 然后 Configurations 然后设置 Arguments 字段
    • @ZackLucky 很高兴它成功了。我不记得这些设置的确切路径。如果有帮助,请按预期标记答案。
    猜你喜欢
    • 2021-06-05
    • 1970-01-01
    • 2012-03-03
    • 2019-03-17
    • 2012-08-09
    • 2015-08-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多