为什么Console.WriteLine不能在Visual Studio代码中工作?

时间:2017-04-05 16:49:29

标签: c# visual-studio-code scriptcs vscode-code-runner

我在Visual Studio Code上安装了scriptcs和coderunner。当我运行包含Console.WriteLine("Test")的简单程序时,我看不到任何输出。该程序似乎成功运行并以代码0退出。

有什么建议吗?

以下是所有人都感兴趣的代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

class Program
{
    static void Main(string[] args)
    {
        Console.WriteLine("Test");
    }
}

6 个答案:

答案 0 :(得分:5)

在launch.json中应该有一个名为'console'的字段:

将其改为:

  "console": "internalConsole",

要:

  "console": "externalTerminal",

为我修好了。

答案 1 :(得分:4)

如果您只是试图在没有项目等的情况下运行cs文件,则问题在于代码运行程序会将文件视为脚本。因此,实际上并没有像运行控制台应用程序那样调用main方法。

因此,解决方案是公开您的main方法,并添加对Program.Main(null);的调用;在类定义之后。此解决方案不需要任何launch.json配置文件或配置更改。请注意,类定义在VS代码中确实显示为错误后对Program.Main的调用,但在代码运行程序中运行良好。请参见下面的代码块。

using System;
class Program
{
    public static void Main(string[] args)
    {
        Console.WriteLine("Test");
    }
}

Program.Main(null);

我在这里找到了答案:https://stackoverflow.com/a/46179597

答案 2 :(得分:0)

如果按ctrl + F5,它将显示您的输出。您将在控制台窗口中获得输出。另一个解决方案,如果你要编写Console.ReadLine();在console.writeline之后,它将保持打开控制台窗口,直到你不按任何键。

答案 3 :(得分:-1)

您需要添加以下任何一行代码

srcdoc

示例:

Console.Readline()
Console.Read()
Console.ReadKey()

答案 4 :(得分:-2)

代码确实编译然后运行但是速度非常快,控制台应用程序在执行后自行关闭。为防止这种情况发生,您需要添加另一种方法,如:

  • Console.Read();

  • 到Console.ReadLine();

Line 代表换行,这意味着光标移动到左边的下一行)。

这样,如果按键盘上的“enter”键,应用程序将关闭。

答案 5 :(得分:-3)

您需要这样做

Console.WriteLine("Hello");
string name = Console.ReadLine();