在Visual Studio代码中使用命令行提示运行C#程序
我正在Visual Studio代码中运行一个用C#编写的继承项目。为了让这个应用程序运行,它需要接受命令行输入(-t,-h等)。如何从VisualStudio内部进行测试 目前(我一直在学习dotnet、C#、VS等等),我有一个helloworld程序,可以从vsc的终端运行。由于某种原因,我无法准确指出,可能是我如何安装的,在Visual Studio代码中使用命令行提示运行C#程序,c#,.net,visual-studio-code,.net-core,C#,.net,Visual Studio Code,.net Core,我正在Visual Studio代码中运行一个用C#编写的继承项目。为了让这个应用程序运行,它需要接受命令行输入(-t,-h等)。如何从VisualStudio内部进行测试 目前(我一直在学习dotnet、C#、VS等等),我有一个helloworld程序,可以从vsc的终端运行。由于某种原因,我无法准确指出,可能是我如何安装的,dotnet run无法识别-我必须为它提供指向dotnet.exe的显式路径:C:\Program Files\dotnet\dotnet.exe run 当程序需要
dotnet run
无法识别-我必须为它提供指向dotnet.exe的显式路径:C:\Program Files\dotnet\dotnet.exe run
当程序需要命令行输入时,如何执行此操作?我在黑暗中拍摄的C:\Program Files\dotnet\dotnet.exe run-t
显然不起作用,但我不确定还能尝试什么
谢谢 如果使用
dotnet.exe run
启动应用程序,则需要添加--
switch语句,以指示dotnet.exe
将参数传递给应用程序。比如说
dotnet.exe运行---arg1-arg2(etc)
注意--
在dotnet
参数之后和程序特定参数之前
我试图在尼科的回答中添加评论,但我缺乏足够的声誉分数。我被每个arg前面的破折号字符弄糊涂了:“-arg1-arg2(etc)”。为了清楚起见,我想指出.NETCore2.1似乎不需要这个。在我的控制台应用程序中,第一个参数使用日期,第二个参数使用整数,第三个参数使用运算符(+或-)。如果我输入以下内容:
C:\>dotnet run -- -7/13/2018 -30 -+
我发现每个arg前面的前导破折号与预期的arg一起被传递到程序中,最后我试图确定parse“-7/13/2018”的日期
当我这样输入时,得到了预期的结果:
C:\>dotnet run -- 7/13/2018 30 +
使用终端运行 当您使用终端运行代码时,必须添加“---”,以告知dotnet您正在使用参数运行代码 C:>dotnet运行--
使用调试器运行
- 如果没有创建.vscode文件夹,请在项目中找到该文件夹
- 打开launch.json文件
- 您将看到一个json对象,并在“args”键中添加参数
等等,那么您的意思是,当您运行/调试(F5)项目时,您必须转到
cmd
并键入路径
,然后run
,然后应用程序才能运行,对吗?检查@Malky.Kid中的“在Visual Studio中构建和运行命令行参数示例”部分,对吗。F5不是很有效-我怀疑我只是把项目设置错了-所以我完全绕过它,只使用命令行,直到我能首先解决这个问题problem@EmilyColeman为什么不使用visual studio的快速版?它是免费的
"configurations": [
{
"name": ".NET Core Launch (console)",
"args": [], // PUT YOUR ARGUMENTS HERE
...
}
]