2020/11/10 (日本時間11日 1:00)に、.NET 5が正式リリースされたそうなので試してみました。
.NET 5のインストール手順
Visual Studio 2019のインストール/アップデート
.NET 5をVisual Studioで扱う場合は、Visual Studio 2019 Version 16.8以降が必要とのことなので、
まずはアップデートを行います。
インストールがまだの場合は、最新のVisual Studioをインストールしましょう。
Download Visual Studio 2019 for Windows & Mac
既にインストールされている場合は、Visual Studio Installerを起動し、更新ボタンをクリック
または、Visual Studioの [ヘルプ] -> [更新プログラムの確認] で更新します。
アップデートが完了したら、 [ヘルプ] -> [Microsoft Visual Studio のバージョン情報] とクリック
.NET 5をインストール
いよいよ.NET 5のインストールです。
まず、ダウンロードページにて、.NET 5のSDKインストーラをダウンロードします。
(種類がいろいろあるので、自分の使ってる端末にあったものをダウンロードします。)
ダウンロードが完了したら、インストーラを起動し、インストールボタンをクリック
しばらく待つと、インストール完了の旨が表示されます。
これで、.NET 5の環境が整いました。
意外と簡単だった。
.NET 5(C#9.0)を使ってみる
さっそく新規プロジェクトを作って使ってみようと思います。
コンソールアプリの作成
とりあえずコンソールからやりたいと思います。
新しいプロジェクトの作成から、コンソール アプリ (.NET Core)
を選択1して、次へのボタンをクリック
適当なプロジェクト名を決め、作成ボタンをクリック
仮に、「Dotnet5Test」としました。
プロジェクトを作成したら、まずは、プロジェクトのプロパティを開きます。
これで.NET 5が使えるようになったので、さっそくコードを書いていきましょう。
個人的に目玉なのが、トップレベルステートメントというのが追加されたそうなので、試してみたいと思います。
最初に出力されたProgram.cs
のコードは、全てコメントアウトにします。
そしたら、1行だけ書きます。
System.Console.WriteLine("Hello World!");
えっメインメソッドとかコメントアウトしたけど実行できるの?
できちゃいました2
トップレベルステートメントというのは、メインメソッド相当のを自動生成してくれるらしいです。
なのでいきなり標準出力の処理を書いても、勝手にメインクラスとして認識してくれるというわけですね。
(なんか感動)
ちなみに以下のコードを実行すると...
using System;
Console.WriteLine("外側からHello World!");
namespace Dotnet5Test
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("内側からHello World!");
}
}
}
こうなります。
Mainメソッドは無視されるようです。(たしか警告が出てたような...)
他の機能を試したい場合は、以下を参照してください。
What's new in .NET 5 (英語)
C# 9.0 の新機能 (日本語)
Windows Formsの作成
今度はFormsアプリを作ってみます。
Windows Forms App (.NET)で作成(dotnet5Formsで作成しました。)
プロジェクトを作成したら、先程と同じように、プロパティから、対象のフレームワークを.NET 5に変更します。
すると、Formsの場合、以下のような警告が表示されます。
警告 NETSDK1137 Microsoft.NET.Sdk.WindowsDesktop SDK を使用する必要はなくなりました。ルート プロジェクト要素の SDK 属性を 'Microsoft.NET.Sdk' に変更することをご検討ください。
検討してくださいとのことなので、.csprojのProject要素のSdk属性を、Microsoft.NET.Sdkに変更します。
(1行目のところ)
ビルドすると警告が消えるのでそのまま実行してみます。
この通り、普通に実行させることができました。
VS Code(コマンド)でプロジェクト作成/実行
.NET 5をインストールすると、dotnet
というコマンドが使えるようになっています。
dotnet --version
dotnet new console -o Dotnet5Test
dotnet run
感想
- .NET 5のインストールが以外と簡単だった。
- コンソールアプリに関しては、.NET 5だと入門しやすい、とっつきやすいのかなと思った。