フッターコンテンツにスキップ
Iron Academy Logo
C#を学ぶ
C#を学ぶ

その他のカテゴリー

LinuxでC# Dev Kitを使用してVS Codeを設定する方法

Tim Corey
19m 09s

LinuxでのC#開発のためのVS Codeのセットアップには約10分かかりますが、C# Dev Kit拡張機能、ホットリロードの設定、開発証明書の動作に注意が必要です。 各ステップを事前に理解することで、プロセスが予測可能になります。

彼のビデオ"VS Code with C# Dev Kit on Linux"では、Tim Coreyが完全なセットアップを紹介しています:VS Codeのダウンロードとインストール、C# Dev Kit拡張機能の追加、Blazor Webアプリケーションの作成、デバッグ、ホットリロードの有効化など。 各ステップと彼が遭遇する問題、およびそれを回避する方法についてカバーします。

.NET 10 SDKのLinuxへのインストールに関する前回のエピソードに従った場合は、そこから作業を継続します。 最終的には、Windowsのセットアップと同等のすべてをカバーするLinuxでの完全なローカル開発環境が得られます。

VS CodeはVisual Studioではありません

[0:42 - 1:59] Timが始めに誤解を招きやすいことを明確に説明しています:Visual StudioとVisual Studio Codeは異なる製品です。 Visual Studioは、Windowsにのみ対応するフルIDEで、Windows固有のライブラリに依存しています。 VS Codeは軽量でクロスプラットフォームのテキストエディタであり、C# Dev Kit拡張機能を使用することで、ほとんど for .NET開発作業に対応する環境になります。

この違いは実際に重要です。なぜなら、Visual StudioはLinuxにはインストールできないからです。 VS Codeが将来の道筋です。

VS Codeのインストール

[1:59 - 3:46] インストールプロセスは簡単です。 Visual Studio Codeのウェブサイトから.debファイルをダウンロードして開き、パッケージマネージャーが残りを処理します。

LinuxにVS Codeをインストールする — .debパッケージをダウンロードして実行

このインストールの便利な副作用の1つは、Microsoftのパッケージリポジトリを自動的にaptに追加することです。これにより、VS Codeは通常のシステム更新プロセスを通じて最新の状態を維持します。 これがなければ、リポジトリとその署名証明書を手動で追加する必要があります。

インストール後、タスクバーにVS Codeをピン留めして簡単にアクセスできるようにします。

C# Dev Kit拡張機能の追加

[4:44 - 5:47] 拡張機能パネルを開き、"C#"を検索します。 最初の結果はMicrosoftのC# Dev Kitであるはずです。 ビデオの録画時点では、約1400万回のダウンロードがあります。

この拡張機能は、C#作業のためのプレーンテキスト編集に対する重要なアップグレードです。

自動更新を有効にしてインストールします。

ライセンス要件

[5:47 - 8:03] インストール後、C# Dev KitはライセンスのためにMicrosoftアカウントでサインインするよう求めてきます。 MicrosoftのC#デバッガは独自のものであり、完全なデバッグ体験を得るためには認証が必要です。

条件は寛容であり、個々の開発者には無料であり、年間100万ドル以下の企業では無料です。それを超える場合には有料のProfessionalライセンスが必要です。

Blazor Webアプリの作成

VS Codeが設定されると、TimはIDEから直接新しいプロジェクトを作成します。"Create .NET Project"コマンドを使用して、Blazor Webアプリテンプレートを選択し、HTTPS、インタラクティブオートモード、サンプルページを含めるように設定します。

LinuxでVS Codeを使用してBlazor Web Appプロジェクトを作成

プロジェクトがスキャフォールディングされると、左側にソリューションエクスプローラが表示され、Visual Studioに似たレイアウトでプロジェクト構造が示されます。

実行とデバッグ

アプリを起動するには、サイドバーの実行とデバッグを使用し、HTTPS起動プロファイルを選択します。VS Codeがプロジェクトをビルドし、デフォルトのブラウザで開きます。

ここでTimは.NET SDK 10.0.103の既知の回帰に直面します:SDKビルドのマージコンフリクトにより開発証明書が正しくインストールされません。 ブラウザには信頼されていない証明書警告が表示されます。

LinuxでVS Codeを使用してBlazorアプリを実行およびデバッグ — 証明書の警告と回避策

回避策として、ブラウザの警告をクリックして通過します("詳細"から"続行")。 そうすることで、SSL上でサイトが正常に動作します。 SDK 10.0.102にロールバックするか、10.0.104に更新することで恒久的に解決されます。

証明書の問題はありますが、ホーム、カウンター、天気などの既定のページはすべて正しく読み込まれます。

ホットリロードの有効化

最初から、VS Codeではホットリロードが無効になっています。 Timはこれを、"Hello, World"を"Hello, YouTube"に変更し、保存と更新を行ってもブラウザに反映されないことで示しています。

これを有効にするには、VS Codeで2つの設定を行う必要があります。

VS Code C# Dev Kitでのホットリロードの有効化とブラウザでのライブアップデートの確認

両方の設定を有効にしたら、デバッグセッションを再起動します。 ツールバーに火のアイコンが表示され、ホットリロードがアクティブであることを確認します。Razorファイルを保存すると、ブラウザに変更が即座に反映されます。

Linuxで構築できるものとできないもの

[16:59 - 18:00] Timは利用可能なプロジェクトテンプレートを簡単に探り、重要な観察を行います:"Windows"を名前に含むもの(WinForms、WPF、UWP)は、Windowsプラットフォームに結び付けられているため利用できません。

Linuxで動作するものは、.NETエコシステムでのクロスプラットフォームすべてをカバーします:ウェブアプリケーション、ASP.NET Core API、gRPCサービス、クラスライブラリ、コンソールアプリ、テストプロジェクト、ワーカーサービスです。

Linuxでのデスクトップアプリケーションには、Uno Platform(XAMLとMVVM/MVUXを使用)もクロスプラットフォームデスクトップアプリを作成するための将来のエピソードとして言及されています。

まとめ:Linuxでの完全なC#環境

[18:02 - 18:28] ウォークスルーの終わりまでに、開発ワークフローのすべての要素が整っています:編集、ビルド、デバッグ、ライブリロードがすべてLinux内のVS Codeから機能します。 他のマシンから既存のクロスプラットフォーム.NETプロジェクトを開くことは、変更なしで行えるはずです。

結論

[18:02 - 19:07] まとめると、C# Dev Kitを搭載したVS Codeは、Linuxに完全なC#開発設定を提供します。インストールはダウンロードされた.debファイルと1つの拡張機能です。 ホットリロードはデフォルトでオフですが、設定パネルから有効にするのに1分未満で済みます。 SDK 10.0.103の開発証明書問題は、10.0.104で解消されます。

本番で利用する大部分 for .NETプロジェクトタイプ(ウェブアプリ、API、サービス、ライブラリ)はLinuxで同様に動作します。 動作しないものは、Windows固有のUIフレームワークに基づいて設計されているものであり、それが予期される限界です。

次回、新しいLinuxマシンを開発用にセットアップする際に、全環境が数分で一体となる。 最初からわからない設定はホットリロードだけであり、どこにあるかを今、確実に知っています。

例のヒント:設定を有効にしてもホットリロードが機能しない場合は、デバッグセッションを完全に停止して再起動したことを確認してください。 デバッグツールバーの火のアイコンがアクティブであることを確認します。アイコンがない場合、古いセッションが新しい設定なしでまだ実行されています。

彼のYouTubeチャンネルで完全なビデオを視聴し、LinuxでのC#開発に関するより多くの洞察を得てください。

Hero Worlddot related to LinuxでC# Dev Kitを使用してVS Codeを設定する方法
Hero Affiliate related to LinuxでC# Dev Kitを使用してVS Codeを設定する方法

好きなことを共有することで収入を増やす

.NET、C#、Java、Python、またはNode.jsを使用する開発者向けのコンテンツを作成しますか?あなたの専門知識を副収入に変えましょう!

アイアンサポートチーム

私たちは週5日、24時間オンラインで対応しています。
チャット
メール
電話してね