チュートリアル: Visual Studio で C# と ASP.NET Core の使用を開始する
ASP.NET Core を使用した C# 開発のこのチュートリアルでは、Visual Studio で C# ASP.NET Core Web アプリを作成します。
このチュートリアルでは、次の方法について説明します。
- Visual Studio プロジェクトを作成する
- C# ASP.NET Core Web アプリを作成する
- Web アプリに変更を加える
- IDE の機能を調べる
- Web アプリを実行する
前提 条件
このチュートリアルを完了するには、次のものが必要です。
- Visual Studio がインストールされています。 無料版については、Visual Studio のダウンロード ページ を参照してください。 最新の Visual Studio リリースへのアップグレードの詳細については、Visual Studio の更新プログラム 参照してください。
- ASP.NET と Web 開発 ワークロードがインストールされています。 Visual Studio でこのワークロードを確認またはインストールするには、[ツール] >[ツールと機能の取得]を選択します。 詳細については、「ワークロードまたは個々のコンポーネント変更する」を参照してください。
プロジェクトを作成する
最初に、ASP.NET Core プロジェクトを作成します。 プロジェクトの種類には、完全に機能する Web サイトを構築するために必要なすべてのテンプレート ファイルが付属しています。
スタート ウィンドウで、[新しいプロジェクト 作成] を選択します。
[新しいプロジェクト の作成] ウィンドウで、[言語] ボックス 一覧から C# を選択します。 次に、プラットフォームの一覧から Windows 選択し、プロジェクトの種類の一覧から Web を します。
言語、プラットフォーム、プロジェクトの種類のフィルターを適用した後、ASP.NET Core Web App テンプレートを選択し、[次へ] 選択。
[新しいプロジェクトの構成] ウィンドウで、プロジェクト名 フィールドに MyCoreApp を入力します。 次に、[次へ]を選択します。
[追加情報] ウィンドウで、[ターゲット フレームワークの] フィールドに .NET Core 3.1 が表示されていることを確認します。
このウィンドウから、Docker のサポートを有効にし、認証のサポートを追加できます。 認証の種類 のドロップダウン メニューには、次の 4 つのオプションがあります。
- なし: 認証なし。
- 個々のアカウント: これらの認証は、ローカルまたは Azure ベースのデータベースに格納されます。
- Microsoft ID プラットフォームの: このオプションでは、認証に Microsoft Entra ID または Microsoft 365 が使用されます。
- Windows: イントラネット アプリケーションに適しています。
[Docker を有効にする] チェック ボックスはオフのままにし、[認証の種類] に [なし] 選択します。
[作成] を選択します。
Visual Studio で新しいプロジェクトが開きます。
スタート ウィンドウで、[新しいプロジェクト 作成] を選択します。
[新しいプロジェクト の作成] ウィンドウで、[言語] ボックス 一覧から C# を選択します。 次に、[ すべてのプラットフォーム] の一覧から Windows を選択し、[ すべてのプロジェクトの種類] 一覧から [Web を します。
言語、プラットフォーム、プロジェクトの種類のフィルターを適用した後、ASP.NET Core Web App (Razor Pages) テンプレートを選択し、[次へ] 選択します。
[新しいプロジェクトの構成] ウィンドウで、[プロジェクト名] フィールドに「MyCoreApp」を入力します。 次に、[次へ]を選択します。
の [追加情報] ウィンドウで、.NET 8.0 が [ターゲット フレームワークの] フィールドに表示されることを確認します。
このウィンドウから、コンテナーのサポートを有効にし、認証のサポートを追加できます。 認証の種類 のドロップダウン メニューには、次の 4 つのオプションがあります。
- なし: 認証なし。
- 個々のアカウント: これらの認証は、ローカルまたは Azure ベースのデータベースに格納されます。
- Microsoft ID プラットフォームの: このオプションでは、認証に Microsoft Entra ID または Microsoft 365 が使用されます。
- Windows: イントラネット アプリケーションに適しています。
[コンテナーのサポートを有効にする ] ボックスはオフのままにし、[認証の種類] に [なし] 選択します。
[作成] を選択します。
Visual Studio で新しいプロジェクトが開きます。
ソリューションについて
このソリューションは Razor ページ デザイン パターンに従っています。 Model-View-Controller (MVC) 設計パターンとは異なり、Razor ページ自体にモデルコードとコントローラー コードを含めるのが合理化されています。
ソリューションを体験する
プロジェクト テンプレートは、MyCoreApp という名前の 1 つの ASP.NET Core プロジェクトソリューションを作成します。 ソリューション エクスプローラーの [] タブを選択して、その内容を表示します。
Pages フォルダーを展開します。
Index.cshtml ファイルを選択し、コード エディターでファイルを表示します。
各 .cshtml ファイルには、関連付けられたコード ファイルがあります。 エディターでコード ファイルを開くには、ソリューション エクスプローラーで Index.cshtml ノードを展開し、Index.cshtml.cs ファイルを選択します。
コード エディターで Index.cshtml.cs ファイルを表示します。
プロジェクトには、web サイトのルートである wwwroot フォルダーが含まれています。 フォルダーを展開して内容を表示します。
CSS、画像、JavaScript ライブラリなどの静的サイト コンテンツは、必要なパスに直接配置できます。
プロジェクトには、実行時に Web アプリを管理する構成ファイルも含まれています。 既定のアプリケーション 構成 は、appsettings.jsonに格納されます。 ただし、appsettings.Development.jsonを使用してこれらの設定をオーバーライドできます。
appsettings.json ファイルを展開して、appsettings.Development.json ファイルを表示します。
実行、デバッグ、変更
ツール バーで、IIS Express ボタンを選択して、デバッグ モードでアプリをビルドして実行します。 または、F5 押すか、メニュー バーから デバッグ>デバッグの開始 に移動します。
手記
Web サーバー 'IIS Express'に接続できないというエラー メッセージが表示された場合は、Visual Studio を閉じてから、管理者としてプログラムを再起動します。 このタスクを実行するには、[スタート] メニューから Visual Studio アイコンを右クリックし、コンテキスト メニューから [管理者として実行] オプション 選択します。
IIS SSL Express 証明書を受け入れるかどうかを確認するメッセージが表示される場合もあります。 Web ブラウザーでコードを表示するには、[はい] 選択し、フォローアップ セキュリティ警告メッセージが表示された場合 [はい] を選択します。
Visual Studio がブラウザー ウィンドウを起動します。 その後、メニューバーに ホーム ページと プライバシー ページが表示されます。
メニュー バー [プライバシー] を選択します。 ブラウザーの プライバシー ページには、Privacy.cshtml ファイルに設定されているテキストが表示されます。
Visual Studio に戻り、Shift + F5 キーを押 を押してデバッグを停止します。 この操作により、ブラウザー ウィンドウでプロジェクトが閉じます。
Visual Studio で、Privacy.cshtml を開いて編集します。 次に、文を削除します。このページを使用して、サイトのプライバシー ポリシーの を詳しく説明し、に置き換えます。このページは、@ViewData[TimeStamp]]の時点で構築中です。
次に、コードを変更してみましょう。 [Privacy.cshtml.cs] を選択します。 次に、次のショートカットを使用して、ファイルの先頭にある
using
ディレクティブをクリーンアップします。マウスオーバーするか、灰色で表示された
using
ディレクティブを選択します。 クイック アクション 電球がキャレットの下または左余白に表示されます。 電球を選択してから、[不要な using の削除] を選択します。次に、[変更のプレビュー] を選択して、変更内容を確認します。
[を選択] し、[を適用] します。 Visual Studio は、不要な
using
ディレクティブをファイルから削除します。次に、
OnGet()
メソッドで、本文を次のコードに変更します。public void OnGet() { string dateTime = DateTime.Now.ToShortDateString(); ViewData["TimeStamp"] = dateTime; }
DateTime の下の波下線に注目してください。 波下線が表示されるのは、この型がスコープに含まれていないためです。
エラー一覧 ツール バーを開き、同じエラーが一覧表示されていることを確認します。 エラー一覧 ツールバーが表示されない場合は、上部のメニュー バーから 表示>エラー一覧 に移動します。
このエラーを修正しましょう。 コード エディターで、エラーが含まれている行にカーソルを置き、左側の余白にある [クイック アクション] 電球を選択します。 次に、ドロップダウンメニューから をシステムを使用して選択し、ディレクティブ をファイルの先頭に追加してエラーを解決します。
F5 押して、Web ブラウザーでプロジェクトを開きます。
Web サイトの上部にある [プライバシー] 選択して、変更を表示します。
Web ブラウザーを閉じ、Shift キー+押して F5 を押してデバッグを停止します。
ホーム ページを変更する
ソリューション エクスプローラーで、Pages フォルダーを展開し、Index.cshtml 選択します。
Index.cshtml ファイルは、Web ブラウザーで実行される Web アプリの ホーム ページに対応します。
コード エディターには、ホーム ページに表示されるテキストの HTML コードが表示されます。
ウェルカム テキストを hello World に置き換えます。
IIS Express 選択するか、Ctrl キー +F5押してアプリを実行し、Web ブラウザーで開きます。
Web ブラウザーの [ホーム] ページに新しい変更が表示されます。
Web ブラウザーを閉じ、Shift キー +F5押してデバッグを停止し、プロジェクトを保存します。 Visual Studio を閉じることができるようになりました。
ソリューションを見学する
プロジェクト テンプレートは、MyCoreApp という名前の 1 つの ASP.NET Core プロジェクトソリューションを作成します。 ソリューション エクスプローラーの [] タブを選択して、その内容を表示します。
Pages フォルダーを展開します。
Index.cshtml ファイルを選択し、コード エディターで表示します。
各 .cshtml ファイルには、関連付けられたコード ファイルがあります。 エディターでコード ファイルを開くには、ソリューション エクスプローラーで Index.cshtml ノードを展開し、Index.cshtml.cs ファイルを選択します。
コード エディターで Index.cshtml.cs ファイルを表示します。
プロジェクトには、web サイトのルートである wwwroot フォルダーが含まれています。 フォルダーを展開して内容を表示します。
CSS、画像、JavaScript ライブラリなどの静的サイト コンテンツは、必要なパスに直接配置できます。
プロジェクトには、実行時に Web アプリを管理する構成ファイルも含まれています。 既定のアプリケーション 構成 は、appsettings.jsonに格納されます。 ただし、appsettings.Development.jsonを使用してこれらの設定をオーバーライドできます。 appsettings.json ファイルを展開して、appsettings.Development.json ファイルを表示します。
実行、デバッグ、変更
ツール バーで、https ボタンを選択して、デバッグ モードでアプリをビルドして実行します。 または、F5 押すか、メニュー バーから デバッグ>デバッグの開始 に移動します。
手記
ASP.NET Core SSL 証明書を受け入れるかどうかを確認するメッセージが表示される場合もあります。 Web ブラウザーでコードを表示するには、[はい] 選択し、フォローアップ セキュリティ警告メッセージが表示された場合 [はい] を選択します。 ASP.NET Core で SSL を適用するの詳細について説明します。
Visual Studio がブラウザー ウィンドウを起動します。 その後、メニューバーに ホーム と プライバシー ページが表示されます。
メニュー バー [プライバシー] を選択します。 ブラウザーの プライバシー ページには、Privacy.cshtml ファイルに設定されているテキストが表示されます。
Visual Studio に戻り、Shift + F5 キーを押 を押してデバッグを停止します。 この操作により、ブラウザー ウィンドウでプロジェクトが閉じます。
Visual Studio で、Privacy.cshtml を開いて編集します。 次に、文を削除します。このページを使用して、サイトのプライバシー ポリシーの を詳しく説明し、に置き換えます。このページは、@ViewData[TimeStamp]]の時点で構築中です。
次に、コードを変更してみましょう。 [Privacy.cshtml.cs] を選択します。 次に、次のショートカットを選択して、ファイルの先頭にある
using
ディレクティブをクリーンアップします。マウスオーバーするか、灰色で表示された
using
ディレクティブを選択します。 クイック アクション 電球がキャレットの下または左余白に表示されます。 電球を選択してから、[不要な using の削除] の横にある展開矢印を選択します。次に、[変更のプレビュー] を選択して、変更内容を確認します。
[を選択] 後、[を適用] します。 Visual Studio は、不要な
using
ディレクティブをファイルから削除します。次に、DateTime.ToString メソッドを使用して、カルチャまたは地域に合わせて書式設定された現在の日付の文字列を作成します。
- メソッドの最初の引数は、日付の表示方法を指定します。 この例では、短い日付形式を示す書式指定子 (
d
) を使用します。 - 2 番目の引数は、日付のカルチャまたは領域を指定する CultureInfo オブジェクトです。 2 番目の引数は、特に日付内の任意の単語の言語、および使用される区切り記号の種類を決定します。
Privacy.cshtml.cs の
OnGet()
メソッドの本体を次のコードに変更します。public void OnGet() { string dateTime = DateTime.Now.ToString("d", new CultureInfo("en-US")); ViewData["TimeStamp"] = dateTime; }
- メソッドの最初の引数は、日付の表示方法を指定します。 この例では、短い日付形式を示す書式指定子 (
次の
using
ディレクティブがファイルの先頭に自動的に追加されます。using System.Globalization;
System.Globalization
には、CultureInfo クラスが含まれています。F5 押して、Web ブラウザーでプロジェクトを開きます。
Web サイトの上部にある [プライバシー] 選択して、変更を表示します。
Web ブラウザーを閉じ、Shift キー+押して F5 を押してデバッグを停止します。
ホーム ページを変更する
ソリューション エクスプローラーで、Pages フォルダーを展開し、Index.cshtml 選択します。
Index.cshtml ファイルは、Web ブラウザーで実行される Web アプリの ホーム ページに対応します。
コード エディターには、ホーム ページに表示されるテキストの HTML コードが表示されます。
ウェルカム テキストを hello World に置き換えます。
https 選択するか、Ctrl キー +F5押してアプリを実行し、Web ブラウザーで開きます。
Web ブラウザーの [ホーム] ページに新しい変更が表示されます。
Web ブラウザーを閉じ、Shift キー +F5押してデバッグを停止し、プロジェクトを保存します。 Visual Studio を閉じることができるようになりました。
次の手順
このチュートリアルを完了しておめでとうございます。 C#、ASP.NET Core、および Visual Studio IDE について学習できることを願っています。 C# と ASP.NET を使用して Web アプリまたは Web サイトを作成する方法の詳細については、次のチュートリアルに進んでください。
または、Docker を使用して Web アプリをコンテナー化する方法について説明します。
関連リンク
- Visual Studio を使用して Web アプリを Azure App Service に発行する
- Visual Studio IDE とエディターの をカスタマイズする