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

このチュートリアルでは、Visual Studio 2022 で .NET コンソール アプリケーションを作成して実行する方法を示します。

前提条件

アプリを作成する

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

  1. Visual Studio 2022 を起動します。

  2. スタート ページで、[新しいプロジェクトの作成] を選択します。

    Create a new project button selected on the Visual Studio start page

  3. [新しいプロジェクトの作成] ページで、検索ボックスに「コンソール」と入力します。 次に、言語の一覧から [C#] または [Visual Basic] を選択してから、プラットフォームの一覧から [すべてのプラットフォーム] を選択します。 [コンソール アプリ] テンプレートを選択し、[次へ] を選択します。

    Create a new project window with filters selected

    ヒント

    .NET テンプレートが表示されない場合は、必要なワークロードが欠落しているおそれがあります。 [お探しの情報が見つかりませんでしたか?] メッセージで、[さらにツールと機能をインストールする] リンクを選択します。 Visual Studio インストーラーが開きます。 .NET デスクトップ開発ワークロードがインストールされていることを確認してください。

  4. [新しいプロジェクトの構成] ダイアログで、[プロジェクト名] ボックスに「HelloWorld」と入力します。 その後、 [次へ] をクリックします。

    Configure your new project window with Project name, location, and solution name fields

  5. [追加情報] ダイアログで、次を行います。

    • [.NET 8 (プレビュー)] を選択します。
    • [最上位レベルのステートメントを使用しない] を選択します。
    • [作成] を選択します

    このテンプレートを使用すると、コンソール ウィンドウに "Hello World" と表示する単純なアプリケーションが作成されます。 コードは、Program.cs または Program.vb ファイルにあります。

    namespace HelloWorld;
    
     internal class Program
     {
         static void Main(string[] args)
         {
             Console.WriteLine("Hello, World!");
         }
     }
    
    Imports System
    
    Module Program
        Sub Main(args As String())
            Console.WriteLine("Hello World!")
        End Sub
    End Module
    

    使用する言語で表示されていない場合は、ページの上部にある言語セレクターを変更します。

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

    C# では、最上位レベルのステートメントという機能により、Program クラスと Main メソッドを省略できます。 このチュートリアルでは、この機能は使用しません。 これをプログラムで使用するかどうかはスタイルの好みの問題です。

アプリを実行する

  1. Ctrl+F5 キーを押して、デバッグなしでプログラムを実行します。

    コンソール ウィンドウが開き、画面に "Hello World!" というテキストが出力されます。 (または、Visual Basic プロジェクト テンプレートでコンマなしの "Hello World!"。)

    Console window showing Hello World Press any key to continue

  2. 任意のキーを押して、コンソール ウィンドウを閉じます。

アプリを拡張する

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

  1. Program.cs または Program.vb で、Main メソッドの内容 (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);
    
    Console.WriteLine("What is your name?")
    Dim name = Console.ReadLine()
    Dim 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 プロパティの値を取得して、それを currentDate という変数に代入します。 これらの値がコンソール ウィンドウに表示されます。 最後に、コンソール ウィンドウにプロンプトを表示し、Console.ReadKey(Boolean) メソッドを呼び出してユーザーによる入力を待ちます。

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

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

  2. Ctrl+F5 キーを押して、デバッグなしでプログラムを実行します。

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

    Console window with modified program output

  4. 任意のキーを押して、コンソール ウィンドウを閉じます。

その他の技術情報

次のステップ

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

このチュートリアルでは、Visual Studio 2022 で .NET コンソール アプリケーションを作成して実行する方法を示します。

前提条件

アプリを作成する

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

  1. Visual Studio 2022 を起動します。

  2. スタート ページで、[新しいプロジェクトの作成] を選択します。

    Create a new project button selected on the Visual Studio start page

  3. [新しいプロジェクトの作成] ページで、検索ボックスに「コンソール」と入力します。 次に、言語の一覧から [C#] または [Visual Basic] を選択してから、プラットフォームの一覧から [すべてのプラットフォーム] を選択します。 [コンソール アプリ] テンプレートを選択し、[次へ] を選択します。

    Create a new project window with filters selected

    ヒント

    .NET テンプレートが表示されない場合は、必要なワークロードが欠落しているおそれがあります。 [お探しの情報が見つかりませんでしたか?] メッセージで、[さらにツールと機能をインストールする] リンクを選択します。 Visual Studio インストーラーが開きます。 .NET デスクトップ開発ワークロードがインストールされていることを確認してください。

  4. [新しいプロジェクトの構成] ダイアログで、[プロジェクト名] ボックスに「HelloWorld」と入力します。 その後、 [次へ] をクリックします。

    Configure your new project window with Project name, location, and solution name fields

  5. [追加情報] ダイアログで、次を行います。

    • [.NET 7.0 (Standard 期間サポート)] を選択します。
    • [最上位レベルのステートメントを使用しない] を選択します。
    • [作成] を選択します

    このテンプレートを使用すると、コンソール ウィンドウに "Hello World" と表示する単純なアプリケーションが作成されます。 コードは、Program.cs または Program.vb ファイルにあります。

    namespace HelloWorld;
    
     internal class Program
     {
         static void Main(string[] args)
         {
             Console.WriteLine("Hello, World!");
         }
     }
    
    Imports System
    
    Module Program
        Sub Main(args As String())
            Console.WriteLine("Hello World!")
        End Sub
    End Module
    

    使用する言語で表示されていない場合は、ページの上部にある言語セレクターを変更します。

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

    最新バージョンの C# では、最上位レベルのステートメントという新しい機能により、Program クラスと Main メソッドを省略できます。 既存の C# プログラムの多くは、最上位レベルのステートメントが使用されていないため、このチュートリアルではこの新しい機能を使用していません。 ただし、これは C# 10 で利用可能であり、プログラムで使用するかどうかはスタイルの好みの問題です。

アプリを実行する

  1. Ctrl+F5 キーを押して、デバッグなしでプログラムを実行します。

    コンソール ウィンドウが開き、画面に "Hello World!" というテキストが出力されます。 (または、Visual Basic プロジェクト テンプレートでコンマなしの "Hello World!"。)

    Console window showing Hello World Press any key to continue

  2. 任意のキーを押して、コンソール ウィンドウを閉じます。

アプリを拡張する

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

  1. Program.cs または Program.vb で、Main メソッドの内容 (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);
    
    Console.WriteLine("What is your name?")
    Dim name = Console.ReadLine()
    Dim 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 プロパティの値を取得して、それを currentDate という変数に代入します。 これらの値がコンソール ウィンドウに表示されます。 最後に、コンソール ウィンドウにプロンプトを表示し、Console.ReadKey(Boolean) メソッドを呼び出してユーザーによる入力を待ちます。

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

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

  2. Ctrl+F5 キーを押して、デバッグなしでプログラムを実行します。

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

    Console window with modified program output

  4. 任意のキーを押して、コンソール ウィンドウを閉じます。

その他の技術情報

次のステップ

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

このチュートリアルでは、Visual Studio 2022 で .NET コンソール アプリケーションを作成して実行する方法を示します。

前提条件

アプリを作成する

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

  1. Visual Studio 2022 を起動します。

  2. スタート ページで、[新しいプロジェクトの作成] を選択します。

    Create a new project button selected on the Visual Studio start page

  3. [新しいプロジェクトの作成] ページで、検索ボックスに「コンソール」と入力します。 次に、言語の一覧から [C#] または [Visual Basic] を選択してから、プラットフォームの一覧から [すべてのプラットフォーム] を選択します。 [コンソール アプリケーション] テンプレートを選んでから、[次へ] を選択します。

    Create a new project window with filters selected

    ヒント

    .NET テンプレートが表示されない場合は、必要なワークロードが欠落しているおそれがあります。 [お探しの情報が見つかりませんでしたか?] メッセージで、[さらにツールと機能をインストールする] リンクを選択します。 Visual Studio インストーラーが開きます。 .NET デスクトップ開発ワークロードがインストールされていることを確認してください。

  4. [新しいプロジェクトの構成] ダイアログで、[プロジェクト名] ボックスに「HelloWorld」と入力します。 その後、 [次へ] をクリックします。

    Configure your new project window with Project name, location, and solution name fields

  5. [追加情報] ダイアログで、[.NET 6 (長期的なサポート)] を選んでから、[作成] を選択します。

    このテンプレートを使用すると、コンソール ウィンドウに "Hello World" と表示する単純なアプリケーションが作成されます。 コードは、Program.cs または Program.vb ファイルにあります。

    Console.WriteLine("Hello, World!");
    
    Imports System
    
    Module Program
        Sub Main(args As String())
            Console.WriteLine("Hello World!")
        End Sub
    End Module
    

    使用する言語で表示されていない場合は、ページの上部にある言語セレクターを変更します。

  6. C# の場合、コードは Console.WriteLine(String) メソッドを呼び出して "Hello World!" とコンソール ウィンドウに表示する行だけです。 Program.cs の内容を次のコードで置き換えます。

    namespace HelloWorld
    {
        class Program
        {
            static void Main(string[] args)
            {
                Console.WriteLine("Hello World!");
            }
        }
    }
    
    ' This step of the tutorial applies only to C#.
    

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

    最新バージョンの C# では、最上位レベルのステートメントという新しい機能により、Program クラスと Main メソッドを省略できます。 既存の C# プログラムの多くは、最上位レベルのステートメントが使用されていないため、このチュートリアルではこの新しい機能を使用していません。 ただし、これは C# 10 で利用可能であり、プログラムで使用するかどうかはスタイルの好みの問題です。

アプリを実行する

  1. Ctrl+F5 キーを押して、デバッグなしでプログラムを実行します。

    コンソール ウィンドウが開き、画面に "Hello World!" というテキストが出力されます。

    Console window showing Hello World Press any key to continue

  2. 任意のキーを押して、コンソール ウィンドウを閉じます。

アプリを拡張する

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

  1. Program.cs または Program.vb で、Main メソッドの内容 (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);
    
    Console.WriteLine("What is your name?")
    Dim name = Console.ReadLine()
    Dim 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 プロパティの値を取得して、それを currentDate という変数に代入します。 これらの値がコンソール ウィンドウに表示されます。 最後に、コンソール ウィンドウにプロンプトを表示し、Console.ReadKey(Boolean) メソッドを呼び出してユーザーによる入力を待ちます。

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

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

  2. Ctrl+F5 キーを押して、デバッグなしでプログラムを実行します。

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

    Console window with modified program output

  4. 任意のキーを押して、コンソール ウィンドウを閉じます。

その他の技術情報

次のステップ

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