前回
https://qiita.com/MasahiroShouya/items/4734e200e951078a2151
で、Visual Studio での開発環境を準備しました。
その際、Web開発もINSTALLしているので、その環境を模索してみます。
デスクトップ開発と同じように、Hello World してみる
※以下は同じ
Visual Studio を起動して、プロジェクトを作成してみましょう。
「新しいプロジェクトの作成」で進めます。
「ASP.NET」で検索をします。
勉強するなら基礎からという事で、「空」を選択したいと思います。
「空」のはずなのですが、既に「Hello World」が準備されているようですね。
(必要なパッケージを手動で追加して Web API に構成するパッケージのようです)
実行してみますが、httpsにすると証明書の準備がウルサイので、httpでテストします。
ブラウザが起動し、「Hello World」が表示されます。
IISへ公開する手順を確認していきます
プロジェクトの「公開」より「発行プロファイルの追加」を進めます
ポップアップが起動するので、「フォルダ」を選択して次へ。
「Webサーバ」があるので、直接デプロイ出来そうですが、不具合発生時の切り分けが難しそうなので、完全に切り離して確実に進めたいと思います。
IISへデプロイするフォルダを指定し「完了」ボタンをクリックします。
「公開準備が完了しました」というメッセージと、「発行」ボタンが表示されます。
「発行」ボタンをクリックします。
正常に発行されると、指定のフォルダにファイルが準備されます。
次にIISの準備をします。Windows-10-Home を使ってますが、サービスのINSTALLはデフォルト設定で問題ありません。その後、「ASP.NET Core Hosting Bundle」をINSTALLする必要があります。以下のURLから取得が可能です。
https://learn.microsoft.com/ja-jp/aspnet/core/host-and-deploy/iis/hosting-bundle?view=aspnetcore-9.0
IISのWebサイトの追加は、以下のように設定します。
発行で出力したフォルダを指定する程度です。
実際にサーバでデプロイする場合は、証明書をINSTALLして、httpsにしたり、
IISで設定したポートを、FireWallで通るように設定したりが、残作業になります。
開発は、前回の内容から、データベースからデータを取得して、一覧をJSONで渡す等の追加実装が必要です。
この辺りは、Aiに頼めばプログラムを作ってくれるので、この一連の手順さえ理解出来れば問題ないですね。
次に、WebAPIではなく、画面機能も含めたWebサイトを用意してみたいと思います。
プロジェクトの作成で、テンプレートに「Blazor Web アプリ」を選択します。
プロジェクトの作成の手順では、サンプルを含めるようにしましょう。
こちらも、IISへのデプロイは、同じ手順で作業が可能です。
Blazorで画面も含めて開発してしまうか、サーバ処理ではWebAPIだけ用意して、画面はReactやvueで用意するか、この辺りは、プロジェクト方針や開発部隊の構成次第な部分になりそうです。
個人的な感覚ですが、1人で全てやるような小規模システムであれば、Blazorで一気に片付けて、サーバ処理担当(Dotnet)とフロント担当(React)で開発者を分けれそうなら、WebAPIでしょうか? 画面系の部分は、動作するようになってから、要件がボロボロ出てくるので、柔軟に対応できるような体制で構えたいと思います。
以上、お疲れさまでした~。