web-dev-qa-db-ja.com

Console.WriteLineがVisualStudio Codeで機能しないのはなぜですか?

Visual StudioCodeに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");
    }
}
11
Matt West

プロジェクトなどを使用せずにcsファイルを実行しようとしている場合、問題はコードランナーがファイルをスクリプトとして扱っていることです。そのため、コンソールアプリを実行している場合のように、mainメソッドは実際には呼び出されていません。

したがって、解決策は、メインメソッドをパブリックにして、Program.Main(null);への呼び出しを追加することです。クラス定義の後。このソリューションでは、launch.jsonの構成ファイルや構成の変更は必要ありません。クラス定義後のProgram.Mainの呼び出しは、VSコードではエラーとして表示されますが、コードランナーでは正常に実行されることに注意してください。以下のコードブロックを参照してください。

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

Program.Main(null);

私はここでこれに対する答えを見つけました: https://stackoverflow.com/a/46179597

6
Kevin

Launch.jsonには、「console」というフィールドが必要です。

からの変更:

  "console": "internalConsole",

に:

  "console": "externalTerminal",

私のためにそれを修正しました。

8
Tim

Ctrl + F5を押すと、出力が表示されます。コンソールウィンドウに出力が表示されます。 Console.ReadLine();を作成する場合の別の解決策。 console.writelineの後、キーを押さなくなるまでコンソールウィンドウは開いたままになります。

0
Sachin Dubey