Visual Studio Code で始める ASP.NET Core Blazor WebAssembly  (Linux, macOS, and Windows)

こんにちは！

本記事では、<a href="https://docs.microsoft.com/ja-jp/aspnet/core/blazor/?view=aspnetcore-5.0" target="_blank">ASP.NET Core Blazor</a> (以下 Blazor) を Visual Studio Code で開発を始める方法について解説しています。



## .NET SDK  のインストール

.NET SDK をまだインストールしていない場合は、下記リンクより、ダウンロードおよびインストールを実行してください。

(2021年2月時点での最新バージョンである .NET 5 へのリンクです)

https://dotnet.microsoft.com/download/dotnet/5.0

## Visual Studio Code のインストール

ご利用の OS に応じたインストーラを取得し、実行できます。

https://azure.microsoft.com/ja-jp/products/visual-studio-code/

### 必要な拡張機能のインストール

Blazor を動作するための必要最低限の拡張機能をインストールしていきましょう。

#### C# for Visual Studio Code

① Visual Studio Code を起動します

② 拡張機能 (Extensions) を選択、 "C# for Visual Studio Code" を入力し、検索します
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/48623/97dab0f8-ca91-70fb-ba8f-745ee3767364.png)


③ C# for Visual Studio Code を選択し、Install をクリックします
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/48623/51904df6-af50-ca98-7222-f996f6952ad3.png)



## Blazor アプリケーションの作り方と起動方法

### アプリケーションの作成 : dotnet new blazorwasm -o アプリケーション名

① Visual Studio Code のターミナルを表示します

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/48623/da1b4395-494c-32ea-beac-bebcdb16391e.png)


② ターミナルで"dotnet new blazorwasm -o HelloBlazor" を実行しましょう

```
dotnet new blazorwasm -o HelloBlazor
```

③ コマンド実行が完了すると、Blazor アプリケーションのディレクトリが作成されます

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/48623/d997f5c5-796f-84b5-d5ae-a6f33fc02805.png)



> 下記はBlazor のプロジェクト構成について解説した記事です、プロジェクト構成が気になる方は、是非ご参照ください。
> https://blogs.jp.infragistics.com/entry/2020/12/10/150516



④ Visual Studio Code で"HelloBlazor" ディレクトリを開きましょう。

※下記コマンドをターミナルで実行することで開く事もできます

```
code HelloBlazor
```

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/48623/6f4c6166-13e9-c946-8b25-cd4b7d037e54.png)



### ビルドと実行 : dotnet run
① Visual Studio Code のターミナルを表示します

② dotnet run コマンドを実行すると、ビルドおよび Blazor の実行環境が構築されます

```
dotnet run
``` 

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/48623/76c7193b-7b6e-42cb-98c4-ff9546e7b840.png)


③ ビルド後、https://localhost:5001 にアクセスして Hello, world! が表示できれば完了です

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/48623/abceb21a-4728-a46c-7ea1-73602e878315.png)



## おすすめの拡張機能


### Razor+

Razor ファイルのコードを見やすく色付けしてくれる拡張機能です。

非常に見やすく、コーディングの効率が向上するので非常におすすめです。

https://marketplace.visualstudio.com/items?itemName=austincummings.razor-plus

### Blazor Snippets

Blazor でよく利用するコードスニペットを設定してくれます。

定形的なコードを効率よくコーディングできますので、作業効率の向上に繋がるおすすめな拡張機能です。

https://marketplace.visualstudio.com/items?itemName=ScottSauber.blazorsnippets



## まとめ 

Visual Studio Code はマルチプラットフォーム対応で、Windows / Mac ユーザー、どちらも非常に人気な IDE ですね。

Blazor は、Visual Studio Code でも快適に開発を進めることが出来ますので、ご検討は如何でしょうか。


## Ignite UI for Blazor トライアル版を利用するには

インフラジスティックスでは充実した UI コンポーネントライブラリーを収録し、データリッチでレスポンシブなWebアプリケーションをより迅速に構築することを可能にする <a href="https://jp.infragistics.com/products/ignite-ui" target="_blank">Ignite UI</a> を開発しており、Blazor 対応の <a href="https://jp.infragistics.com/products/ignite-ui-blazor" target="_blank">Ignite UI for Blazor</a> もリリースしています。<br>
Ignite UI for Blazor はトライアル版での試用が可能です。<br>
トライアル版を利用するためには <a href="https://iam.infragistics.com/Account/Register" target="_blank">こちらのページ</a> よりアカウントの作成を行ってください。登録より30日間、弊社のテクニカルサポートをご利用いただくことが出来ますのでお気軽にお問い合わせください。<br>

また、製品をご購入をご検討のお客様は <a href="https://iam.infragistics.com/Account/Register" target="_blank">こちらのページ</a> よりお気軽にお問い合わせください。


## 開発全般に関するご相談はお任せください！

インフラジスティックス・ジャパンでは、各プラットフォームの特別技術トレーニングの提供や、開発全般のご支援を行っています。


https://jp.infragistics.com/service-and-support/professional-service

「古い技術やサポート終了のプラットフォームから脱却する必要があるが、その移行先のプラットフォームやフレームワークの検討が進まない、知見がない。」

「新しい開発テクノロジーを採用したいが、自社内にエキスパートがいない。日本語リソースも少ないし、開発を進められるか不安。」

「自社のメンバーで開発を進めたいが、これまで開発フェーズを外部ベンダーに頼ってきたため、ツールや技術に対する理解が乏しい。」

「UIを刷新したい。UIデザインやUI/UXに関する検討の進め方が分からない。外部のデザイン会社に頼むと、開発が難しくなるのではないか、危惧している。」

といったご相談を承っています。

お問い合せは<a href="https://jp.infragistics.com/about-us/contact-us#contactform" target="_blank">こちら</a>からお気軽にご相談ください。