【T1a】ASP.NET Core の基本(2/4)
プロジェクトタイプ | ASP.NET Core (空) |
---|---|
プロジェクト名 | T1a |
ソリューション名 | PIT1 |
ターゲットフレームワーク | .NET 8.0(長期的なサポート) |
最上位レベルのステートメントを使用しない | 使用する(チェックオフ) |
1a-2. プロジェクトの作成と実行
まずは Web アプリケーション用のプロジェクトを作るところから学ぼう.
プロジェクトの新規作成時に「C#」「全てのプラットフォーム」「Web」を選択すると, _に示すようにいくつかのプロジェクトテンプレートが表示される.
- ASP.NET Core (空)
- すべて手動設定するためのWebアプリケーション用のプロジェクトテンプレート
- ASP.NET Core Web API
- Web API 用のプロジェクトテンプレート
- ASP.NET Core Web アプリ
- ASP.NET Razor Pages 用のプロジェクトテンプレート
- ASP.NET Core Web アプリ(Model-View-Controller)
- ASP.NET Core MVC 用のプロジェクトテンプレート
ここでは「ASP.NET Core (空)」タイプのプロジェクトを選択しよう.次にプロジェクト名とソリューション名を入力する(_).
上表に示すように,プロジェクト名にはT1a
,ソリューション名にはPIT1
と入力する.
_に示す画面では作成するプロジェクトについてのいくつかの設定を行うことができる. 今回は_のように選択しよう.
項目 | 設定 |
---|---|
ターゲットフレームワーク | .NET 8.0(長期的なサポート) |
HTTPS用の構成 | オフ(チェックを外す) |
Dockerを有効にする | オフ(そのまま) |
最上位レベルのステートメントを使用しない | オフ |
「HTTPS用の構成」にチェックを入れたままプロジェクトを作成してしまってもプロジェクトそのものの構成は通常と変わりはないので 修正することは可能である.この場合,修正する必要があるのは開始方法に関する一部の設定のみである. まず,Program.cs に _のような記述があれば削除する .
|
|
次にProperties/launchSettings.json
を編集する.この場合は_のようになっているはずである.
|
|
7行目のsslPort
の部分を行ごと削除し,その前の行の行末のカンマを削除する.
また,21行目のapplicationUrl
の値をhttp://localhost:
に変更する.
最終的にlaunchSettings.jsonは_のようになる
( プロジェクト名などのプロジェクトごとに異なる部分などが食い違ってしまうのでこれをそのまま使用しないこと ).ポート番号

とりあえずこのまま何も変更せずに実行してみよう.実行する際はデバッグ実行の方法を指定するために, _に示す2か所を設定する必要がある.
①はアプリケーションの実行環境の指定でhttp
が選択されていることを確認する.
②は表示に使用するウェブブラウザの指定でデバッグ実行時はここで指定したウェブブラウザが起動する.ここではFirefoxを選択する.
ではデバッグ実行を開始してみよう.Visual Studio 上部のボタンをクリックするか,F5キーを押下する.
すると_のようなコンソールウィンドウ(黒画面)が表示され,ウェブブラウザが起動してhttp://localhost:
が開かれる.
ポート番号
/ポート番号
の部分はプロジェクトごとに異なるので注意しよう.
このページには_のように Hello World!
とだけ表示されるはずである.
なお,ASP.NET Core ファミリのプロジェクトを初回起動する場合は,_のようなダイアログが表示される場合があるので「OK」をクリックし,
次の_のダイアログでは「はい」を選択しよう.また,Firefox を起動した際にデフォルトのウェブブラウザが Firefox 以外である場合に,
_のように表示されることがあるが,必ずしも Firefox をデフォルトのウェブブラウザに設定する必要はない(してもよい)ので,
各自その要否を判断して選択しよう.
くわえて稀に_のようなエラーが表示される場合がある.その場合はデバッグ停止のボタンをクリックして起動しなおすとよい.
ウェブブラウザを閉じるとデバッグ実行も自動的に終了する.コンソールウィンドウ(黒画面)には_のように表示され,何かキーを押下すればこの画面は閉じる. ちなみに,コンソールウィンドウ(黒画面)が開いたことからわかるように,「ASP.NET Core Web アプリケーション」は基本的に今まで作成してきたコンソールアプリケーションと同様のものであると考えてよい.