チュートリアル: Visual Studio Code を使用して .NET コンソール アプリケーションを作成する

このチュートリアルでは、Visual Studio Code と .NET CLI を使用して NET コンソール アプリケーションを作成して実行する方法を示します。 プロジェクトの作成、コンパイル、実行などのプロジェクト タスクは、.NET CLI を使用して行われます。 必要に応じて、別のコード エディターを使用してこのチュートリアルに従い、ターミナルでコマンドを実行することができます。

必須コンポーネント

  1. C# 拡張機能がインストールされている Visual Studio Code。 Visual Studio Code に拡張機能をインストールする方法については、VS Code Extension Marketplace を参照してください。
  2. .NET 5.0 SDK 以降

アプリを作成する

"HelloWorld" という名前の .NET コンソール アプリ プロジェクトを作成します。

  1. Visual Studio Code を開始します。

  2. メイン メニューから [ファイル] > [フォルダーを開く] (macOS では [ファイル] > [開く...] ) の順に選択します。

  3. [フォルダーを開く] ダイアログで、HelloWorld フォルダーを作成し、 [フォルダーの選択] (macOS では [開く] ) をクリックします。

    フォルダー名は既定でプロジェクト名と名前空間名になります。 このチュートリアルでは後でコードを追加しますが、プロジェクト名前空間は HelloWorld にします。

  4. メイン メニューで [表示] > [ターミナル] の順に選択して、Visual Studio Code で ターミナル を開きます。

    ターミナル が開き、HelloWorld フォルダーにコマンド プロンプトが表示されます。

  5. ターミナル で、次のコマンドを入力します。

    dotnet new console
    

このテンプレートでは、シンプルな "Hello World" アプリケーションを作成します。 Console.WriteLine(String) メソッドを呼び出し、コンソール ウィンドウに "Hello World!" を表示します。

テンプレート コードでは、引数として String 配列を受け取る単一のメソッド Main を含む、Program というクラスが定義されます。

using System;

namespace HelloWorld
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");
        }
    }
}

Main はアプリケーションのエントリ ポイントで、アプリケーションを起動するときに、ランタイムによって自動的に呼び出されるメソッドです。 アプリケーションが起動されるときに提供されるコマンドライン引数はすべて args 配列にあります。

アプリを実行する

ターミナル で次のコマンドを実行します。

dotnet run

プログラムによって "Hello World!" が表示されて 終了します。

dotnet run コマンド

アプリを拡張する

アプリケーションを拡張し、ユーザーに名前の入力を求め、日付と時刻と共にそれを表示するようにします。

  1. Program.cs をクリックして開きます。

    Visual Studio Code で初めて C# ファイルを開くと、OmniSharp がエディターに読み込まれます。

    Program.cs ファイルを開く

  2. Visual Studio Code で、アプリのビルドとデバッグに必要なアセットの追加を求められたら、 [はい] を選択します。

    足りない資産の入力を求める

  3. Program.csMain メソッドの内容 (Console.WriteLine を呼び出す行) を以下のコードに置き換えます。

    Console.WriteLine("What is your name?");
    var name = Console.ReadLine();
    var currentDate = DateTime.Now;
    Console.WriteLine($"{Environment.NewLine}Hello, {name}, on {currentDate:d} at {currentDate:t}!");
    Console.Write($"{Environment.NewLine}Press any key to exit...");
    Console.ReadKey(true);
    

    このコードによりコンソール ウィンドウにプロンプトが表示され、ユーザーが文字列を入力して Enter キーを押すまで待機します。 これはこの文字列を name という変数に格納します。 さらに現在の現地時刻を含む DateTime.Now プロパティの値を取得して、それを date という変数に代入します。 これらの値がコンソール ウィンドウに表示されます。 最後に、コンソール ウィンドウにプロンプトを表示し、Console.ReadKey(Boolean) メソッドを呼び出してユーザーによる入力を待ちます。

    NewLine は、プラットフォームに依存せず、言語に依存せずに、改行を表す方法です。 代替手段は、C# では \n、Visual Basic では vbCrLf です。

    文字列の前にドル記号 ($) を付けると、変数名などの式を文字列で中かっこで囲むことができます。 式の値が、式の代わりに文字列に挿入されます。 この構文は、補間された文字列と呼ばれます。

  4. 変更内容を保存します。

    重要

    Visual Studio Code では、変更を明示的に保存する必要があります。 Visual Studio とは異なり、アプリをビルドして実行してもファイルの変更は自動的には保存されません。

  5. もう一度プログラムを実行します。

    dotnet run
    
  6. プロンプトに対し、名前を入力し、Enter キーを押します。

    プログラムの出力が変更されたターミナル ウィンドウ

  7. 任意のキーを押してプログラムを終了します。

その他の技術情報

次の手順

このチュートリアルでは、.NET コンソール アプリケーションを作成しました。 次のチュートリアルでは、アプリをデバッグします。