在Visual Studio代码中使用命令行提示运行C#程序

时间:2017-05-25 23:06:25

标签: c# .net visual-studio-code .net-core

我在Visual Studio Code中运行用C#编写的继承项目。为了运行此应用程序,需要输入命令行(-t,-h等)。如何从Visual Studio内部测试?

目前(我一直在学习dotnet,C#,VS等)我有一个hello world程序,我可以从vsc的终端运行。出于某种原因,我无法确定,可能是我如何安装它,dotnet run无法识别 - 我必须向它提供dotnet.exe的显式路径:C:\Program Files\dotnet\dotnet.exe run

当程序需要命令行输入时,我该怎么做?我在C:\Program Files\dotnet\dotnet.exe run -t黑暗中的镜头可以预测不起作用,但我不确定还有什么可以尝试。

谢谢!

4 个答案:

答案 0 :(得分:3)

如果您使用dotnet.exe run启动应用程序,则需要添加-- switch语句,以指示dotnet.exe将参数传递给您的应用程序。例如

Microsoft Documentation

dotnet.exe run -- -arg1 -arg2 (etc)--参数之后和程序特定参数之前注意dotnet

GitHub Issue

答案 1 :(得分:1)

使用终端运行

使用终端运行代码时,必须添加'-'来告诉dotnet您正在使用参数运行代码

  

C:> dotnet运行-<your arguments here>

使用调试器运行

  • 如果未创建项目,请在项目中找到.vscode文件夹。
  • 打开launch.json文件
  • 您将看到一个json对象,并将您的参数添加到“ args”键中。

launch.json

    "configurations": [
        {
            "name": ".NET Core Launch (console)",
            "args": [], // PUT YOUR ARGUMENTS HERE
             ...
        }
    ]

答案 2 :(得分:0)

  1. 右键点击您的项目
  2. 单击“属性”
  3. 单击“属性”窗口中的“调试”
  4. 在&#34;启动选项下:&#34;
  5. 添加&#34;命令行参数:&#34; = run -t
  6. 添加&#34;工作目录:&#34;试试bin \ debug目录

答案 3 :(得分:0)

我试图在Nico的回答中添加评论,但我缺乏足够的声誉。我对每个arg前面的破折号感到困惑:“ -arg1 -arg2(etc)”。为了清楚起见,我想指出.NET Core 2.1似乎不需要这样做。在我的控制台应用程序中,第一个参数需要一个日期,第二个参数需要一个整数,第三个参数需要一个运算符(+或-)。如果我输入以下内容:

C:\>dotnet run -- -7/13/2018 -30 -+

我发现每个arg前面的前导破折号与预期的arg一起传递到了程序中,我最终尝试将日期解析为“ -7/13/2018”

像这样输入时,我得到了预期的结果:

C:\>dotnet run -- 7/13/2018 30 +